Fungsi DateDiff

Berlaku Untuk
Access untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Mengembalikan Varian (Long) yang menentukan jumlah interval waktu antara dua tanggal.

Sintaks

DateDiff(interval, date1, date2[, firstdayofweek][, firstweekofyear])

Fungsi DateDiff ini memiliki argumen ini:

Argumen Deskripsi
interval Diperlukan. Ekspresi string yang merupakan interval waktu yang Anda gunakan untuk menghitung perbedaan antara date1 dan date2.
date1, date2 Diperlukan. Varian (Tanggal). Dua tanggal yang ingin Anda gunakan dalam perhitungan.
firstdayofweek Opsional. Konstanta yang menentukan hari pertama dalam seminggu. Jika Anda tidak menentukannya, Minggu diasumsikan.
firstweekofyear Opsional. Konstanta yang menentukan minggu pertama dalam setahun. Jika Anda tidak menentukannya, minggu pertama adalah minggu di mana 1 Januari terjadi.

Pengaturan

Argumen interval memiliki pengaturan ini:

Pengaturan Deskripsi
yyyy Tahun
q Kuartal
m Bulan
y Hari dalam setahun
d Hari
w Hari kerja
ww Minggu
h Jam
n Menit
s Detik

Argumen firstdayofweek memiliki pengaturan ini:

Konstanta Nilai Deskripsi
vbUseSystem 0 Menggunakan pengaturan API NLS.
vbSunday 1 Minggu (default)
vbMonday 2 Senin
vbTuesday 3 Selasa
vbWednesday 4 Rabu
vbThursday 5 Kamis
vbFriday 6 Jumat
vbSaturday 7 Sabtu
Konstanta Nilai Deskripsi
vbUseSystem 0 Menggunakan pengaturan API NLS.
vbFirstJan1 1 Dimulai dengan minggu di mana 1 Januari terjadi (default).
vbFirstFourDays 2 Dimulai dengan minggu pertama yang memiliki setidaknya empat hari dalam tahun baru.
vbFirstFullWeek 3 Dimulai dengan minggu penuh pertama dalam setahun.

Keterangan

Anda dapat menggunakan fungsi untuk DateDiff menentukan berapa banyak interval waktu tertentu yang ada di antara dua tanggal. Misalnya, Anda mungkin menggunakan DateDiff untuk menghitung jumlah hari antara dua tanggal atau jumlah minggu antara hari ini dan akhir tahun.

Untuk menghitung jumlah hari antara date1 dan date2, Anda bisa menggunakan Hari dalam setahun ("y") atau Hari ("d"). Ketika interval Hari Kerja ("w"), DateDiff mengembalikan jumlah minggu di antara dua tanggal. Jika date1 jatuh pada hari Senin, DateDiff menghitung jumlah Senin hingga date2. Ini menghitung date2 tetapi tidak date1. Namun, DateDiff jika interval minggu ("ww"), fungsi mengembalikan jumlah minggu kalender di antara dua tanggal. Ini menghitung jumlah hari Minggu antara date1 dan date2. DateDiff date2 menghitung jika jatuh pada hari Minggu, tetapi tidak dihitung date1, bahkan jika jatuh pada hari Minggu.

Jika date1 merujuk ke titik waktu berikutnya daripada date2, fungsi mengembalikan DateDiff angka negatif.

Argumen mempengaruhi firstdayofweek penghitungan yang menggunakan "w" simbol interval dan "ww" .

Jika date1 atau date2 merupakan tanggal harfiah, tahun yang ditentukan menjadi bagian permanen dari tanggal tersebut. Namun, jika date1 atau date2 dimasukkan dalam tanda kutip ganda (" "), dan Anda menghilangkan tahun, tahun saat ini disisipkan dalam kode Anda setiap kali date1 ekspresi atau date2 dievaluasi. Ini memungkinkan untuk menulis kode yang dapat Anda gunakan dalam tahun yang berbeda.

Ketika Anda membandingkan 31 Desember dengan 1 Januari tahun berikutnya, DateDiff untuk Tahun ("yyyy") mengembalikan 1 meskipun hanya satu hari yang telah berlalu.

Catatan

For date1 and date2, if the Calendar property setting is Gregorian, the supplied date must be Gregorian. Jika kalender adalah Hijriyah, tanggal yang disediakan harus Hijriyah.

Contoh Kueri DateDiff

Ekspresi Hasil
SELECT DateDiff("yyyy",#01/01/2010#,[DateofSale]) AS Expr1 FROM ProductSales; Mengembalikan selisih, dalam tahun, antara tanggal 01/01/2010 dan nilai dalam DateofSale bidang.
SELECT DateDiff("q",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales; Mengembalikan selisih, dalam kuartal berdasarkan tahun kalender, antara tanggal sistem dan DateofSale, dan menampilkannya dalam DaysSinceSale kolom.
SELECT DateDiff("y",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales; Mengembalikan selisih, dalam hari, antara tanggal sistem dan DateofSale, dan menampilkannya dalam DaysSinceSale kolom.
SELECT DateDiff("d",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales; Mengembalikan selisih, dalam hari, antara tanggal sistem dan DateofSale, dan menampilkannya dalam DaysSinceSale kolom.
SELECT DateDiff("w",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales; Mengembalikan selisih, dalam hari kerja, antara tanggal sistem dan DateofSale, dan menampilkannya dalam DaysSinceSale kolom. Jika DateofSale jatuh pada hari Senin, DateDiff menghitung jumlah Senin hingga tanggal sistem. Ini menghitung tanggal sistem tapi bukan nilainya DateofSale .
SELECT DateDiff("ww",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales; Mengembalikan selisih, dalam minggu kalender, antara tanggal sistem dan DateofSale, dan menampilkannya dalam DaysSinceSale kolom. Ini menghitung jumlah Hari Minggu antara DateofSale dan tanggal sistem. Ini menghitung tanggal sistem jika jatuh pada hari Minggu, tetapi tidak dihitung DateofSale, bahkan jika jatuh pada hari Minggu.
SELECT DateDiff("h",[DateTime],Date()) AS DaysSinceSale FROM ProductSales; Mengembalikan selisih, dalam jam, antara tanggal sistem dan DateTime, dan menampilkannya dalam DaysSinceSale kolom.
SELECT DateDiff("n",[DateTime],Date()) AS DaysSinceSale FROM ProductSales; Mengembalikan selisih, dalam menit, antara tanggal sistem dan DateTime, dan menampilkannya dalam DaysSinceSale kolom.
SELECT DateDiff("s",[DateTime],Date()) AS DaysSinceSale FROM ProductSales; Mengembalikan selisih, dalam detik, antara tanggal sistem dan DateTime, dan menampilkannya dalam DaysSinceSale kolom.

Menggunakan fungsi DateDiff dalam ekspresi

Anda bisa menggunakan fungsi di DateDiff mana saja Anda bisa menggunakan ekspresi. Misalnya, Anda memiliki formulir yang Anda gunakan untuk memenuhi pesanan pelanggan. Dalam tabel Pesanan, Anda memiliki bidang ReceiveBefore bernama yang berisi tanggal di mana pelanggan perlu menerima pesanan. Anda dapat menggunakan DateDiff fungsi dengan kotak teks pada formulir untuk menampilkan jumlah hari tersisa sebelum pesanan harus dikirimkan.

Dengan asumsi dibutuhkan waktu sepuluh hari untuk mengirimkan pesanan apa pun, atur properti Sumber Kontrol kotak teks sebagai berikut:

=DateDiff("d", Now(), [Orders].[ReceiveBefore])-10

Saat Anda membuka formulir dalam Tampilan Formulir, kotak teks menampilkan jumlah hari tersisa sebelum pesanan harus dikirimkan. Jika tersisa kurang dari 10 hari sebelum pelanggan perlu menerima pesanan, angka dalam kotak teks negatif. Ini menunjukkan berapa hari terlambat pesanan akan terjadi jika Anda segera mengirimkannya.

Menggunakan fungsi DateDiff dalam kode VBA

Contoh ini menggunakan DateDiff fungsi untuk menampilkan jumlah hari antara tanggal tertentu dan hari ini.

Dim TheDate As Date  ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date")
Msg = "Days from today: " & DateDiff("d", Now, TheDate)
MsgBox Msg

Lihat Juga

Memilih fungsi tanggal yang benar