Lewati ke konten utama

Cara Menghitung Selisih Hari Antar Tanggal di Excel: 5 Cara Terbaik

Jelajahi pengurangan sederhana untuk perhitungan tanggal yang cepat dan mudah. Terapkan fungsi DAYS() dan DATEDIF() untuk mendapatkan interval tanggal yang presisi. Gunakan NETWORKDAYS() dan TODAY() untuk melacak hari kerja dan mengecualikan akhir pekan serta hari libur secara otomatis.
Diperbarui 4 Jun 2026  · 5 mnt baca

Dalam artikel ini, saya akan memandu Anda melalui beberapa cara praktis menangani tanggal. Kita akan membahas semuanya mulai dari pengurangan sederhana hingga fungsi tingkat lanjut seperti NETWORKDAYS() dan DATEDIF(). Pada akhirnya, Anda akan tahu cara menghitung hari antar tanggal, melacak hari kerja, dan bahkan menangani skenario khusus seperti melewati akhir pekan atau hari libur. Namun, jika Anda baru di Excel, lihat kursus Introduction to Excel kami untuk membangun dasar Anda. 

Memahami Sistem Tanggal Excel

Untuk memulai, mari kita bahas secara singkat tentang sistem tanggal Excel. Hal terpenting yang perlu diketahui adalah Excel menyimpan setiap tanggal sebagai angka unik. Misalnya, 1 Januari 1900 adalah angka 1, dan 2 Januari 1900 adalah angka 2, dan seterusnya.

Agar tidak terlalu rumit, saya juga ingin menyebutkan dua hal tambahan. Pertama, ketahuilah bahwa Excel sebenarnya menggunakan dua sistem: sistem 1900 dan sistem 1904. Sistem 1900 dimulai dengan 1 Januari 1900 sebagai hari ke-1, dan sistem 1904 dimulai dengan 1 Januari 1904 sebagai hari ke-0. Perbedaan antara kedua sistem ini adalah 1.462 hari, atau sekitar 4 tahun dan 1 hari kabisat. Juga, ketahuilah bahwa format tanggal dapat bervariasi menurut wilayah. Misalnya, 02/03/2025 bisa berarti 3 Februari atau 2 Maret, bergantung pada lokasi Anda. Jika kita tidak konsisten dengan format tanggal, Excel dapat salah menafsirkan data dan menghasilkan hasil yang keliru.

Hal-hal ini tidak akan menjadi masalah jika Anda hanya menghitung hari antar tanggal, tetapi tetap baik untuk diketahui. Ikuti jalur Excel Fundamentals kami untuk benar-benar menjadi ahli.

Cara Menemukan Selisih Hari Antar Tanggal di Excel

Ada beberapa metode berbeda untuk menemukan selisih hari antar tanggal di Excel. Secara fungsional, sebagian besar sama. Saya akan menunjukkan setiap metode dan Anda bisa memilih yang paling Anda sukai.

Metode 1: Pengurangan sederhana

Pengurangan sederhana adalah salah satu cara termudah dan tercepat untuk menemukan selisih hari antar tanggal. Metode ini mengurangkan satu tanggal dari tanggal lainnya. Sintaksnya:

New date - Old date

Di sini, saya memiliki dataset dengan tanggal pada sel A2 dan B2, dan pada sel C2, saya memasukkan rumus berikut:

=B2-A2

Find days between dates using subtraction method in Excel

Temukan selisih hari antar tanggal dengan metode pengurangan. Gambar oleh Penulis.

Metode 2: Fungsi DAYS()

Cara lain yang saya gunakan adalah dengan fungsi DAYS() yang memang dirancang untuk ini. Sintaksnya:

=DAYS(end_date, start_date)

Pada sel C2, saya memasukkan rumus berikut:

=DAYS(B2,A2)

Seperti pengurangan, jika tanggal akhir setelah tanggal mulai, hasilnya positif. Jika sebelum, hasilnya negatif.

Find days between dates using DAYS() function in Excel

Temukan selisih hari antar tanggal menggunakan fungsi DAYS(). Gambar oleh Penulis.

Metode 3: Fungsi DATEDIF()

Seperti fungsi DAYS(), DATEDIF() mengurangkan tanggal, tetapi urutan argumennya terbalik. Sintaksnya: 

=DATEDIF(start_date, end_date, "d"))

Argumen ketiga menentukan satuan waktu. Misalnya, d untuk hari, y untuk tahun, dan m untuk bulan.

Pada sel C2, saya memasukkan rumus berikut:

=DATEDIF(A2, B2, "d")

Namun, saat saya menekan Enter, saya mendapat galat #NUM! di baris ketiga. Itu karena rumus mencoba mengurangkan tanggal yang lebih baru (end_date) dari tanggal yang lebih lama (start_date) dan fungsi DATEDIF() tidak mengizinkan ini. Jadi meskipun DATEDIF() lebih fleksibel karena memungkinkan berbagai satuan waktu, fungsinya juga kurang fleksibel karena tidak mengembalikan hasil negatif.

Perhatikan juga bahwa DATEDIF() adalah fungsi tersembunyi, sehingga Excel tidak menyarankannya saat saya mengetik. Ini berarti Anda harus mengetik semuanya secara manual jika menggunakan fungsi ini.

Find days between dates using DATEDIF() function in Excel

Temukan selisih hari antar tanggal menggunakan fungsi DATEDIF(). Gambar oleh Penulis.

Metode 4: Fungsi NETWORKDAYS() dan NETWORKDAYS.INTL()

NETWORKDAYS() dan NETWORKDAYS.INTL() hanya menghitung hari kerja dan mengecualikan akhir pekan dan hari libur. Misalnya Anda ingin mengetahui jumlah hari kerja antara dua tanggal dan mengecualikan akhir pekan. Dalam kasus ini, Anda dapat menggunakan fungsi NETWORKDAYS() untuk melewati hari Sabtu dan Minggu secara otomatis. Sintaksnya: 

NETWORKDAYS(start_date, end_date, [holidays])

Sebagai contoh, jika saya tidak menentukan hari libur apa pun, maka hanya akhir pekan yang dikecualikan. Pada sel C2, saya memasukkan rumus berikut:

=NETWORKDAYS(A2,B2)

Ini memberi saya jumlah hari kerja antara tanggal di A2 dan B2, dengan mengecualikan akhir pekan.

Find the days between the dates using NETWORKDAYS() function in Excel Temukan selisih hari antar tanggal menggunakan fungsi NETWORKDAYS(). Gambar oleh Penulis.

Jika saya juga ingin mengecualikan hari libur, saya mencantumkan tanggal-tanggal tersebut di kolom terpisah seperti E2 hingga E5. Lalu, saya merujuk rentang itu di argumen ketiga seperti ini:

=NETWORKDAYS(A2,B2,$E$3:$E$4)

Sekarang, rumus menghitung hari kerja dengan mengecualikan akhir pekan dan hari libur yang saya cantumkan. Ini membuat perhitungan hari kerja yang akurat menjadi sangat mudah.

Find the days excluding holidays between the dates using NETWORKDAYS() in Excel

Menggunakan fungsi NETWORKDAYS(). Gambar oleh Penulis.

Terkadang, akhir pekan saya tidak default Sabtu dan Minggu. Dalam kasus itu, saya menggunakan fungsi NETWORKDAYS.INTL(). Ini memungkinkan saya menentukan akhir pekan khusus. Sintaksnya:

NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays])

Untuk argumen weekend, saya bisa menggunakan angka untuk memilih preset akhir pekan (seperti 1 untuk Sabtu-Minggu atau 7 untuk Jumat-Sabtu) atau bahkan menggunakan string teks khusus seperti 0000011, di mana setiap digit merepresentasikan hari dalam seminggu (dimulai dari Senin). Angka 1 menandai hari tersebut sebagai akhir pekan, dan 0 sebagai hari kerja.

Misalkan akhir pekan saya adalah Jumat dan Sabtu. Untuk itu, saya akan menggunakan rumus ini:

=NETWORKDAYS.INTL(A2, B2, 7, $E$2:$E$3)

Find the days between the dates using NETWORKDAYS.INTL() in ExcelTemukan selisih hari antar tanggal menggunakan NETWORKDAYS.INTL(). Gambar oleh Penulis.

Metode 5: Fungsi TODAY()

Jika saya ingin menghitung berapa hari telah berlalu sejak tanggal tertentu atau berapa hari tersisa hingga tanggal mendatang, saya selalu menggunakan fungsi TODAY(). Fungsi ini mengembalikan tanggal saat ini, jadi saya tidak perlu memperbaruinya setiap hari. Sintaksnya: 

=TODAY() - past_date

Misalkan tanggal lampau ada pada sel A3. Jadi, saya memasukkan rumus ini pada sel B3:

=TODAY()-A3

Find the days left since the date with the TODAY() function in Excel

Temukan jumlah hari sejak tanggal tersebut dengan fungsi TODAY(). Gambar oleh Penulis.

Jika saya perlu mengetahui berapa hari tersisa hingga tanggal mendatang, saya cukup membalik rumusnya:

=Future_date - TODAY()

Jadi rumusnya menjadi: 

=A3 - TODAY()

Find the days until future date with the TODAY() function in Excel

Temukan jumlah hari hingga tanggal tersebut dengan fungsi TODAY(). Gambar oleh Penulis.

Pemikiran saya: Perbandingan cepat semua fungsi 

Metode Yang saya suka Yang kurang saya suka
Pengurangan sederhana Cepat dan mudah Tidak memperhitungkan akhir pekan atau hari libur
DAYS() Sintaks jelas dan terstruktur Hanya bekerja untuk satuan hari
DATEDIF() Fleksibel untuk hari, bulan, atau tahun Memunculkan galat saat nilainya negatif

NETWORKDAYS()

NETWORKDAYS.INTL()

Mengecualikan akhir pekan dan hari libur Perlu penyiapan tambahan untuk hari libur
TODAY() Memperbarui otomatis setiap hari Hanya berfungsi untuk perhitungan yang melibatkan hari ini

Teknik Lanjutan

Selain dasar-dasar, jika Anda menangani skenario kompleks, berikut beberapa teknik lanjutan: 

Menangani nilai negatif

Ketika urutan tanggal terbalik, kita mendapatkan nilai negatif. Untuk mengatasinya, saya membungkus fungsi DAYS() di dalam fungsi ABS() seperti ini:

=ABS(DAYS(B2,A2))

Dan Anda dapat melihat hasilnya pada gambar di bawah ini: 

Handling negative date values in Excel

Gunakan fungsi ABS() untuk menangani nilai negatif. Gambar oleh Penulis.

Penanganan galat

Berikut galat tanggal Excel umum yang saya hadapi dan cara saya memperbaikinya.

  • Galat #VALUE!: Ini terjadi ketika sistem saya disetel ke format tanggal mm/dd/yyyy, tetapi rumus saya menggunakan dd/mm/yyyy. Saya memperbaikinya dengan memperbarui tanggal di rumus agar sesuai dengan format sistem saya.

  • Galat #NUM!: Saya mendapatkan galat ini saat menggunakan fungsi DAYS(), dan penyebabnya adalah salah satu tanggal memiliki nilai numerik di luar rentang valid untuk tanggal. Untuk menghindarinya, pastikan nilainya berada dalam rentang yang valid. 

  • Galat #NAME?: Ini biasanya masalah salah ketik (DATEIF() alih-alih DATEDIF()). Untuk menghindari masalah seperti ini, periksa kembali ejaan Anda.

Mengombinasikan fungsi

Terkadang, satu fungsi tanggal tidak cukup untuk tugas yang kompleks, jadi saya mengombinasikan beberapa fungsi untuk membuat rumus dinamis yang menangani berbagai skenario.

Misalkan saya ingin mengetahui berapa hari sekolah yang tersisa hingga ujian. Untuk ini, saya menggunakan NETWORKDAYS() untuk menghitung hari kerja dan menambahkan IFERROR() untuk menangani tanggal tidak valid. Dalam kasus ini, rumusnya akan terlihat seperti ini: 

=IFERROR(NETWORKDAYS(TODAY(), A2, $B$3:$B$4), "Check Dates")

Combine IFERROR with NETWORKDAYS() and TODAY() function to find how many days left till exams in Excel

Gabungkan IFERROR() dengan NETWORKDAYS. Gambar oleh Penulis. 

Kapan Anda Mungkin Perlu Menghitung Selisih Hari Antar Tanggal di Excel

Izinkan saya berbagi beberapa contoh nyata tentang bagaimana saya baru-baru ini menggunakan fungsi-fungsi ini dalam proyek saya.

Menghitung usia 

Saya diberi daftar tanggal untuk menghitung usia individu berdasarkan tanggal lahir mereka. Untuk melakukannya, saya menggunakan fungsi DATEDIF(). Anda dapat melihat contoh dataset di bawah. Pada sel B2, saya memasukkan

=DATEDIF(A2,TODAY(),"Y")

Rumus ini lalu menghitung jumlah tahun penuh antara tanggal di A2 (tanggal lahir) dan tanggal hari ini.

Find the age using IF() and TODAY() functions in Excel

Temukan usia menggunakan fungsi DATEDIF(). Gambar oleh Penulis.

Jika saya membutuhkan detail yang lebih spesifik, seperti total bulan atau hari, saya dapat menyesuaikan rumus seperti ini:

  • m untuk menemukan jumlah bulan sejak lahir.

  • d untuk menemukan jumlah hari.

Pelacakan lini masa proyek

Saya juga melacak hari kerja yang tersisa untuk sebuah proyek dengan fungsi NETWORKDAYS(). Untuk melakukannya, saya memasukkan tanggal mulai dan tanggal akhir pada sel A2 dan B2 serta mencantumkan hari libur pada sel C2:C5. Lalu, untuk menghitung hari kerja proyek, saya memasukkan rumus pada sel D2:

=NETWORKDAYS(A2,B2,$C$3:$C$5)

Find the working days left for the project using NETWORKDAYS() functions in Excel

Temukan hari yang tersisa untuk proyek menggunakan fungsi NETWORKDAYS(). Gambar oleh Penulis.

Kapan pun lini masa proyek berubah, saya cukup memperbarui tanggal, dan rumus akan menyesuaikan secara otomatis. Dengan cara ini, saya bisa dengan mudah memantau tenggat waktu.

Analisis keuangan

Suatu ketika, saya harus melacak banyak tenggat kontrak. Jadi, saya menyiapkan sistem sederhana di Excel untuk memudahkan mengidentifikasi tenggat yang kedaluwarsa atau aktif.

Saya cukup memasukkan rumus ini pada sel C2:

=IF(B2 < TODAY(), "Expired", "Active")

Ini memberi label setiap kontrak secara otomatis berdasarkan apakah tanggal kedaluwarsanya telah lewat.

Saya bahkan menggunakan pemformatan bersyarat untuk memberi kode warna pada sel berdasarkan statusnya agar lebih jelas. Kontrak Active disorot hijau, sementara kontrak Expired ditandai merah. 

Untuk melakukannya, saya memilih New Rule di bawah Conditional Formatting, dan memilih Use a formula to determine which cells to format. Lalu, saya memasukkan rumus =B2="Expired" dan =B2="Active" secara terpisah. Dengan cara ini, saya dapat mengidentifikasi kontrak mana yang perlu diperhatikan.

check whether the contract deadline is active or expired today or not in Excel

Lacak tenggat kontrak. Gambar oleh Penulis.

Sekarang, semuanya memperbarui sendiri. Rumus akan langsung menyesuaikan kapan pun saya menambahkan kontrak baru atau memperbarui tanggal kedaluwarsa.

Jeda pengisian ulang obat

Anda juga dapat menghitung jeda antara pengisian ulang resep obat di Excel. Misalnya, orang tua Anda mengambil persediaan obat 30 hari pada 1 Januari 2025, tetapi hari ini 5 Februari 2025, dan Anda ingin mengetahui berapa lama mereka tidak mengonsumsi obat. 

Pada dataset di bawah, sel A2 menunjukkan kapan obat terakhir diambil. Kita cukup mengurangkan hari ini dari tanggal tersebut dan menambahkan 30. (Ini hanya contoh untuk tujuan berlatih fungsi Excel, dan untuk situasi medis, konsultasikan dengan dokter Anda.)

=TODAY()-(A3+30)

Calculating medication refill gaps in Excel using the TODAY() function

Temukan pengisian ulang obat terakhir. Gambar oleh Penulis

Dengan cara ini, saya dengan mudah melacak jumlah hari sejak setiap pengisian ulang dan merencanakan berikutnya tanpa menebak-nebak.

Tips dan Praktik Terbaik

Sekarang, berikut beberapa tips dan praktik terbaik untuk membantu Anda sepanjang jalan:

  • Saya selalu memastikan sel tanggal diformat dengan benar. Jika tidak, Excel mungkin tidak mengenalinya sebagai tanggal, yang dapat mengacaukan perhitungan. Jadi, saya selalu memeriksa ulang bahwa sel diatur ke Date dari tab Home di bawah grup format Name.

  • Saya menjaga rumus tetap sederhana dan jelas. Alih-alih menulis tanggal langsung seperti =DAYS("1/10/2025", "1/1/2025"), saya selalu menggunakan referensi sel seperti A2 dan B2. Dengan begitu, jika saya perlu memperbarui tanggal, saya cukup mengubah nilai sel tanpa menyentuh rumus.

  • Saat menggunakan fungsi TODAY(), saya selalu memastikan sel diformat ke Number — jika tidak, sel akan menampilkan galat #### atau tanggal yang tidak benar.

Pemikiran Akhir

Saya telah membagikan beberapa cara terbaik untuk bekerja dengan tanggal di Excel, mulai dari pengurangan sederhana hingga fungsi yang lebih canggih seperti DAYS(), DATEDIF(), NETWORKDAYS(), dan TODAY(). Fungsi-fungsi ini sangat berguna untuk melacak lini masa dan mengelola hari libur.

Cara terbaik untuk menjadi terbiasa adalah dengan berlatih. Cobalah di spreadsheet Anda sendiri dan lihat bagaimana fungsi-fungsi ini dapat menyederhanakan pekerjaan Anda. 

Jika Anda siap meningkatkan keterampilan lebih jauh, saya merekomendasikan mengikuti kursus Data Analysis in Excel , kursus Data Preparation in Excel , dan kursus Data Visualization in Excel. Kursus-kursus ini membahas fitur dan strategi lanjutan yang dapat membuat pekerjaan Anda semakin efisien. 


Laiba Siddiqui's photo
Author
Laiba Siddiqui
LinkedIn
Twitter

Saya seorang ahli strategi konten yang senang menyederhanakan topik kompleks. Saya telah membantu perusahaan seperti Splunk, Hackernoon, dan Tiiny Host membuat konten yang menarik dan informatif untuk audiens mereka.

FAQs

Bagaimana cara menghitung selisih antara dua waktu dalam jam, menit, dan detik sambil mengabaikan satuan lainnya?

Anda dapat menggunakan rumus berikut:

  • Jam: =HOUR(B2-A2)

  • Menit: =MINUTE(B2-A2)

  • Detik: =SECOND(B2-A2)

Catatan: Hasil tidak akan melebihi 24 jam atau 60 menit/detik.

Bagaimana cara menghitung jumlah jam antara dua waktu di Excel?

Untuk menghitung jam sebagai desimal, gunakan =(B2-A2)*24, dan untuk mendapatkan jam lengkap, gunakan =INT((B2-A2)*24).

Apa pintasan keyboard untuk cepat menyisipkan tanggal atau waktu saat ini di Excel?

Berikut cara melakukannya:

  • Tekan Ctrl + ; untuk menyisipkan tanggal saat ini.
  • Tekan Ctrl + Shift + ; untuk menyisipkan waktu saat ini.

Bagaimana cara menghitung jumlah minggu antara dua tanggal?

Untuk menghitung jumlah minggu antara dua tanggal, bagi jumlah hari dengan 7. Anda dapat menggunakan rumus berikut: = (End_Date - Start_Date) / 7.

Topik

Belajar Excel dengan DataCamp

Kursus

Pengantar Excel

4 Hr
236K
Kuasai dasar-dasar Excel dan pelajari cara menggunakan alat spreadsheet ini untuk melakukan analisis yang berdampak.
Lihat DetailRight Arrow
Mulai Kursus
Lihat Lebih BanyakRight Arrow
Terkait

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

Lihat Lebih BanyakLihat Lebih Banyak