Rumus NETWORKDAYS Excel: Hitung Hari Kerja Tanpa Libur
TL;DR
Rumus NETWORKDAYS Excel ditulis =NETWORKDAYS(tanggal_mulai; tanggal_selesai; [libur]) dan ngasih jumlah hari kerja di antara dua tanggal. Sabtu dan Minggu otomatis nggak dihitung, dan argumen ketiga (opsional) tempat kamu naruh range tanggal merah supaya ikut dilewatin. Kalau hari kerja kantor kamu bukan Senin–Jumat, pakai NETWORKDAYS.INTL yang bisa nentuin sendiri hari mana yang dianggap akhir pekan.
NETWORKDAYS ngitung berapa hari kerja antara dua tanggal. Sabtu dan Minggu otomatis dilewatin.
Sintaksnya: =NETWORKDAYS(tanggal_mulai; tanggal_selesai; [libur])
Argumen ketiga yang bikin dia berguna banget di Indonesia — di situ kamu taruh daftar tanggal merah.
Kalau kamu ngitung SLA tiket, lead time pengiriman, atau sisa hari kerja sampai deadline, rumus ini yang kamu cari. Ngitung selisih tanggal biasa (=B2-A2) bakal ngasih angka yang salah, soalnya dia ikut ngitung weekend.
Apa itu rumus NETWORKDAYS di Excel?
NETWORKDAYS adalah fungsi Excel yang mengembalikan jumlah hari kerja penuh di antara dua tanggal. Sintaksnya =NETWORKDAYS(tanggal_mulai; tanggal_selesai; [libur]). Sabtu dan Minggu otomatis dikecualikan, sementara argumen ketiga (opsional) tempat kamu naruh range tanggal libur nasional supaya ikut dilewatin juga.
=NETWORKDAYS("02/03/2026"; "06/03/2026")
' Senin sampai Jumat → hasil: 5
=NETWORKDAYS("02/03/2026"; "08/03/2026")
' Senin sampai Minggu → hasil: 5 (Sabtu-Minggu nggak kehitung)
=NETWORKDAYS("02/03/2026"; "02/03/2026")
' Satu hari, hari kerja → hasil: 1
Perhatiin yang terakhir. Tanggal mulai dan selesai dua-duanya ikut dihitung.
Ini sumber selisih 1 hari yang paling sering bikin bingung. Aku bahas lagi di bagian kesalahan umum.
Gimana cara masukin tanggal merah ke NETWORKDAYS?
Bikin satu kolom khusus daftar libur nasional. Taruh di sheet terpisah biar rapi.
' Kolom H (sheet "Libur"):
H2: 01/01/2026 Tahun Baru
H3: 17/01/2026 Isra Miraj
H4: 17/02/2026 Tahun Baru Imlek
H5: 19/03/2026 Nyepi
H6: 03/04/2026 Wafat Isa Almasih
H7: 01/05/2026 Hari Buruh
H8: 14/05/2026 Kenaikan Isa Almasih
H9: 01/06/2026 Hari Lahir Pancasila
H10: 17/08/2026 HUT RI
...
Terus panggil sebagai argumen ketiga:
=NETWORKDAYS(A2; B2; $H$2:$H$18)
Tanda dolar itu wajib. Tanpa dolar, waktu kamu drag rumusnya ke bawah, range libur-nya ikut geser — baris 10 bakal ngecek H10:H26, yang isinya udah beda.
Ini bug yang diam-diam ngerusak seluruh kolom kamu tanpa error apa pun.
Satu syarat lagi: daftar liburnya harus tanggal beneran, bukan teks. Kalau rata kiri di sel, itu teks. Convert dulu.
Gimana kalau kantor masuk hari Sabtu?
NETWORKDAYS keras kepala — dia selalu anggap Sabtu-Minggu itu libur. Nggak bisa diubah.
Buat toko, pabrik, atau tim support yang masuk Sabtu, pakai NETWORKDAYS.INTL.
=NETWORKDAYS.INTL(tanggal_mulai; tanggal_selesai; [akhir_pekan]; [libur])
Argumen ketiga nentuin hari mana yang dianggap akhir pekan:
| Kode | Hari libur |
|---|---|
| 1 (default) | Sabtu & Minggu |
| 11 | Cuma Minggu |
| 12 | Cuma Senin |
| 17 | Cuma Sabtu |
| 2 | Minggu & Senin |
' Toko buka Senin-Sabtu, cuma libur Minggu:
=NETWORKDAYS.INTL(A2; B2; 11; $H$2:$H$18)
Butuh kontrol lebih detail? Pakai string 7 karakter, urutannya Senin sampai Minggu. 1 = libur, 0 = kerja.
' Libur Jumat sore + Minggu (misal pabrik):
=NETWORKDAYS.INTL(A2; B2; "0000101"; $H$2:$H$18)
' Posisi: Sen Sel Rab Kam Jum Sab Min
' String: 0 0 0 0 1 0 1
Aturan lengkap kode akhir pekan ada di dokumentasi NETWORKDAYS.INTL dari Microsoft.
Contoh kasus: SLA tiket support di e-commerce lokal
Aku pakai data 940 tiket customer support dari dataset latihan Ngulik Data — marketplace fashion lokal, periode Januari 2026.
SLA-nya: tiket harus selesai dalam 3 hari kerja.
Kalau dihitung pakai selisih tanggal biasa:
=C2-B2
' Tiket masuk Jumat, selesai Senin → hasil 3 hari
' Padahal cuma 1 hari kerja beneran
Kalau dihitung pakai NETWORKDAYS:
=NETWORKDAYS(B2; C2; $H$2:$H$18) - 1
' Tiket masuk Jumat, selesai Senin → hasil 1 hari kerja
Bedanya bikin angka kepatuhan SLA jauh beda:
| Metode hitung | Tiket lolos SLA | % lolos |
|---|---|---|
| Selisih hari kalender (C2-B2) | 611 | 65% |
| NETWORKDAYS (hari kerja) | 836 | 89% |
Selisihnya 24 poin persen. Dua ratus dua puluh lima tiket yang tadinya dianggap "telat" ternyata sebenernya lolos.
Tim support-nya sempet kena semprot manajemen gara-gara angka 65% itu. Padahal rumusnya yang salah, bukan kerjanya.
Yang bikin selisihnya segede itu: mayoritas tiket masuk hari Jumat sore (28% dari total). Kalau dihitung pakai hari kalender, mereka otomatis kena penalti 2 hari weekend yang bukan salah siapa-siapa.
Buat ngitung persentase lolos SLA-nya, aku pakai COUNTIFS.
Gimana hitung sisa hari kerja sampai deadline?
Kombinasikan sama TODAY().
=NETWORKDAYS(TODAY(); C2; $H$2:$H$18) - 1
' C2 = deadline
' Hasil: sisa hari kerja, weekend dan tanggal merah nggak dihitung
Kurangi 1 karena hari ini biasanya udah kepakai setengah.
Ini jauh lebih jujur dari countdown biasa. Deadline "5 hari lagi" yang jatuh lewat long weekend sebenernya cuma nyisain 2 hari kerja.
Detail cara kerja TODAY() ada di panduan rumus TODAY dan NOW.
Gimana hitung jumlah hari kerja dalam satu bulan?
Berguna buat bikin target harian tim sales: target bulanan dibagi jumlah hari kerja.
=NETWORKDAYS(EOMONTH(A2;-1)+1; EOMONTH(A2;0); $H$2:$H$18)
' A2 = tanggal apa pun di bulan itu
' Hasil: jumlah hari kerja di bulan tersebut
Buat 2026:
| Bulan | Hari kalender | Hari kerja |
|---|---|---|
| Januari | 31 | 21 |
| Februari | 28 | 19 |
| Maret | 31 | 21 |
| April | 30 | 21 |
Target bulanan Rp500 juta di Februari artinya Rp26,3 juta per hari kerja. Di Januari cuma Rp23,8 juta.
Beda 10%. Kalau targetnya dibagi rata 30 hari kalender, tim kamu bakal ngerasa targetnya "aneh" tiap bulan — dan mereka bener.
Rumus EOMONTH yang aku pakai di situ aku bahas di panduan EOMONTH. Referensi argumennya di halaman fungsi NETWORKDAYS.
Kesalahan umum waktu pakai NETWORKDAYS
1. Lupa tanggal mulai ikut dihitung
Ini penyebab selisih 1 hari nomor satu.
=NETWORKDAYS("02/03/2026"; "02/03/2026") → 1, bukan 0
Kalau maksud kamu "udah berapa hari kerja sejak tanggal itu", kurangi 1. Kalau maksud kamu "berapa hari kerja yang tersedia termasuk hari ini", biarkan.
Tentuin sekali, konsisten di seluruh file.
2. Range libur nggak dikunci pakai dolar
=NETWORKDAYS(A2;B2;H2:H18) — di-drag ke bawah, range-nya jadi H3:H19, H4:H20, dst.
Nggak error. Cuma hasilnya salah pelan-pelan.
Selalu $H$2:$H$18.
3. Daftar libur berisi teks, bukan tanggal
Copy-paste dari web sering ngasih teks. NETWORKDAYS bakal ngabaikan diam-diam — nggak ngasih error, tapi tanggal merahnya nggak dilewatin.
Cara cek: =ISNUMBER(H2). Kalau FALSE, itu teks.
4. Tanggal selesai lebih awal dari tanggal mulai
NETWORKDAYS ngasih angka negatif, bukan error.
=NETWORKDAYS("06/03/2026"; "02/03/2026") → -5
Kalau data kamu ada baris yang tanggal selesainya lebih awal (data kotor), ini nggak akan ketahuan sampai laporan kamu ada angka minus yang aneh.
Bungkus pakai MAX(0; ...) kalau perlu.
5. Pakai NETWORKDAYS padahal maksudnya WORKDAY
NETWORKDAYS = ngukur (berapa hari kerja antara dua tanggal).
WORKDAY = ngejadwalin (tanggal apa 5 hari kerja dari sekarang).
=WORKDAY("02/03/2026"; 5; $H$2:$H$18)
' Hasil: 09/03/2026 (5 hari kerja setelah 2 Maret)
Salah pilih di sini bikin jadwal produksi kamu meleset berhari-hari.
FAQ
Apa fungsi rumus NETWORKDAYS di Excel?
NETWORKDAYS ngitung berapa hari kerja antara dua tanggal. Sabtu dan Minggu otomatis nggak dihitung. Argumen ketiga opsional — isi range tanggal merah kalau kamu mau libur nasional ikut dilewatin. Gunanya buat hitung SLA tiket, lead time pengiriman, atau sisa hari kerja sampai deadline.
Apakah NETWORKDAYS ngitung tanggal mulai dan selesai?
Iya, dua-duanya ikut dihitung kalau kebetulan hari kerja. NETWORKDAYS untuk tanggal yang sama hasilnya 1, bukan 0. Ini yang sering bikin selisih 1 hari. Kalau kamu maunya "berapa hari kerja sejak tanggal itu" tanpa ngitung hari-H, kurangi 1 dari hasilnya.
Gimana kalau kantor masuk hari Sabtu?
Pakai NETWORKDAYS.INTL. Argumen ketiganya nentuin hari apa yang dianggap akhir pekan: 11 berarti cuma Minggu yang libur, 1 berarti Sabtu-Minggu (default). Bisa juga pakai string 7 karakter kayak "0000011" buat kontrol penuh per hari.
Gimana cara masukin tanggal merah ke NETWORKDAYS?
Bikin daftar tanggal libur nasional di satu kolom terpisah, misalnya H2:H18. Panggil sebagai argumen ketiga dan kunci pakai dolar: =NETWORKDAYS(A2;B2;$H$2:$H$18). Tanda dolar penting supaya range-nya nggak geser waktu di-drag. Tanggal liburnya harus tanggal beneran, bukan teks.
Apa bedanya NETWORKDAYS dan WORKDAY?
NETWORKDAYS ngasih jumlah hari kerja antara dua tanggal yang udah kamu tau. WORKDAY kebalikannya — kamu kasih tanggal mulai dan jumlah hari kerja, dia ngasih tanggal selesainya. Pakai NETWORKDAYS buat ngukur, WORKDAY buat ngejadwalin.
Penutup
Tiga hal yang bikin NETWORKDAYS kamu akurat:
- Bikin kolom tanggal merah dan kunci pakai
$H$2:$H$18. - Inget tanggal mulai ikut dihitung. Kurangi 1 kalau kamu maunya "sejak".
- Kantor masuk Sabtu? Pindah ke NETWORKDAYS.INTL.
Buka file SLA atau lead time kamu, cek apakah masih pakai =B2-A2. Kalau iya, angka kamu selama ini kejam ke tim sendiri.
Lanjut ke rumus WEEKDAY kalau kamu mau tau hari apa penjualan paling ramai.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Artikel Terkait
Template Laporan Penjualan Excel: Struktur yang Dipakai Analis
Template laporan penjualan yang bener cuma butuh 3 sheet. Yang bikin laporan orang rusak biasanya karena data mentah dan hasil dicampur di satu tempat.
Cara Menghubungkan Google Sheets ke Looker Studio
Nyambungin Google Sheets ke Looker Studio cuma butuh 5 menit. Yang bikin lama itu datanya belum rapi. Ini urutan yang bener.
Cara Share Google Sheets dengan Aman: Permission & Protected Range
Panduan step by step share Google Sheets tanpa bikin rumus kehapus atau data gaji bocor — dari level permission, protected range, sampai audit siapa yang buka.