Lewati ke konten
Tanggal & Waktu

Generator Tanggal Berulang

Ubah satu tanggal mulai dan aturan pengulangan menjadi daftar tanggal lengkap yang terurut — harian, mingguan, bulanan, atau tahunan, dengan pola hari ke-N dan hari terakhir dalam seminggu. Lihat RRULE setara dan cetak atau bagikan jadwalnya.

Kalkulator

minggu
Pada hari berikut

Kosongkan untuk menggunakan hari mulai.

Berakhir

Hingga 500 tanggal. Tanggal tidak valid (mis. tanggal 31 di bulan 30 hari, atau 29 Feb di tahun biasa) dilewati sesuai RFC 5545.

Jadwal

Setiap minggu · —

Pilih tanggal mulai dan aturan pengulangan untuk melihat jadwal lengkap.
Alat referensi dan perencanaan — periksa kembali tanggal, angka, dan persyaratan resmi yang penting sebelum mengandalkannya.

Tentang kalkulator ini

Generator ini mengubah satu tanggal mulai dan aturan pengulangan menjadi daftar tanggal lengkap yang terurut, lalu menampilkannya sebagai jadwal yang bisa dicetak atau dibagikan. Model aturan mengikuti standar RRULE iCalendar (RFC 5545): frekuensi (harian, mingguan, bulanan, atau tahunan), interval N ("setiap N unit"), pilihan hari opsional untuk aturan mingguan, pola bulanan (hari yang sama setiap bulan, "hari ke-N dalam seminggu" seperti Jumat ke-3, atau hari terakhir dalam seminggu), dan kondisi akhir — setelah sejumlah kejadian atau hingga tanggal akhir inklusif. Setiap tanggal ditampilkan dengan harinya dan dalam format ISO 8601 (YYYY-MM-DD), beserta string RRULE setara yang bisa Anda tempelkan ke aplikasi kalender.

Cara membaca hasil Anda

Judul utama adalah jumlah tanggal yang dihasilkan aturan, dengan tanggal pertama, tanggal terakhir, dan rentang dalam hari di sampingnya. Di bawahnya, jadwal mencantumkan setiap kejadian secara berurutan — posisinya, hari, dan tanggal ISO — serta grafik "Kejadian per bulan" menunjukkan bagaimana tanggal-tanggal tersebar di kalender. Baris RRULE abu-abu adalah aturan yang sama dalam sintaks RFC 5545 (contohnya RRULE:FREQ=MONTHLY;BYDAY=3FR;COUNT=12 untuk "Jumat ke-3 setiap bulan, dua belas kali"). Tanggal dihitung dalam UTC agar daftar tidak bergeser satu hari akibat perubahan waktu musim panas, dan seri dibatasi hingga 500 tanggal — jika aturan akan berjalan lebih panjang, Anda akan melihat 500 tanggal pertama beserta catatan.

Cara penghitungan

Mesin membaca tanggal mulai dalam UTC (Date.UTC) agar tidak ada transisi waktu musim panas yang dapat menggeser hari. Untuk aturan harian, bulanan, dan tahunan, mesin berjalan melalui indeks kejadian i = 0, 1, 2 … dan membangun tanggal kandidat: harian menambah i × interval hari; bulanan memajukan i × interval bulan dan mempertahankan hari-dalam-bulan awal (melewati bulan yang tidak memilikinya), menyelesaikan hari ke-N dalam seminggu, atau menyelesaikan hari terakhir dalam seminggu; tahunan memajukan i × interval tahun pada bulan dan hari awal (melewati 29 Februari di tahun biasa). Aturan mingguan ditambatkan ke Senin minggu awal dan melangkah maju interval minggu setiap kali, menghasilkan setiap hari yang dipilih. Kandidat apapun sebelum tanggal mulai dilewati; hari kalender yang tidak ada dilewati; pembuatan berhenti pada hitungan yang diminta, pada tanggal UNTIL inklusif, atau pada batas 500 tanggal. Hasilnya juga mencakup tanggal yang dikelompokkan berdasarkan bulan kalender dan string RRULE RFC 5545 setara. Perhitungan adalah fungsi murni tanpa akses ke jam atau jaringan.

Contoh perhitungan

Atur tanggal mulai ke 1 Januari 2026, pilih Bulanan, pola "hari ke-N dalam seminggu", Jumat ke-3, dan akhiri setelah 3 kejadian.

Generator menghasilkan 2026-01-16, 2026-02-20, dan 2026-03-20 — Jumat ke-3 setiap bulan — dan baris RRULE berbunyi RRULE:FREQ=MONTHLY;BYDAY=3FR;COUNT=3. Karena hanya tanggal pada atau setelah tanggal mulai yang dihasilkan, Jumat ke-3 di Januari (tanggal 16) adalah entri pertama.

Pertanyaan yang sering diajukan

Apa fungsi string RRULE?

RRULE adalah sintaks aturan pengulangan dari RFC 5545, standar iCalendar yang menggerakkan Google Calendar, Apple Calendar, Outlook, dan sebagian besar alat penjadwalan. Generator menulis aturan Anda dalam satu baris RRULE (FREQ, INTERVAL, BYDAY, COUNT atau UNTIL) sehingga Anda bisa menempelkannya ke acara kalender atau file .ics dan mereproduksi seri yang sama persis di sana.

Bagaimana tanggal yang tidak ada, seperti tanggal 31 atau 29 Februari, ditangani?

Tanggal tersebut dilewati, tidak pernah dimajukan — persis seperti yang ditentukan RFC 5545. Aturan bulanan "hari yang sama" yang dimulai dari tanggal 31 hanya berjalan di bulan-bulan yang memiliki tanggal 31 (sehingga Februari, April, Juni, September, dan November dilewati). Aturan tahunan pada 29 Februari hanya terjadi di tahun kabisat. Generator tidak pernah diam-diam menggeser tanggal yang hilang ke tanggal 1 atau 28.

Apa bedanya dengan Pencari Hari ke-N dalam Seminggu?

Pencari hari ke-N dalam seminggu menjawab satu pertanyaan — tanggal berapa misalnya Kamis ke-3 dalam satu bulan. Generator ini menghasilkan seluruh seri berulang: Kamis ke-3 setiap bulan untuk sebanyak kejadian (atau hingga tanggal akhir) yang Anda minta, ditambah RRULE setara dan jadwal yang bisa dicetak.

Apakah ada batas jumlah tanggal yang dihasilkan?

Ya — seri dibatasi ketat hingga 500 tanggal. Jika Anda memilih "hingga tanggal tertentu" dan aturan akan menghasilkan lebih dari 500 kejadian, generator mengembalikan 500 pertama dan menandai bahwa aturan berlanjut melewati rentang yang ditampilkan. Penghitungan berdasarkan kejadian ("setelah N") juga dibatasi hingga 500.

Di zona waktu mana tanggal-tanggal itu berada?

Tanggal-tanggal adalah tanggal kalender tanpa waktu atau zona waktu — dihitung dalam UTC agar aritmetikanya stabil. Aturan mingguan dengan beberapa hari ditambatkan ke Senin dari minggu tanggal mulai (awal minggu default RFC 5545), dan hanya tanggal pada atau setelah tanggal mulai Anda yang muncul dalam daftar.

Skenario populer

Skenario populer

Sumber

Ditinjau oleh Tim YouCalc · Terakhir ditinjau

Menemukan kendala terjemahan, kendala perhitungan, atau punya saran? Beritahu kami.

Lebih banyak kalkulator seperti ini. Pilih yang berikutnya.