Fungsi DateDiff VBA

Fungsi DATEDIFF dalam VBA adalah fungsi terbina dalam VBA yang juga dikategorikan dalam fungsi tarikh dan waktu di VBA, fungsi ini digunakan untuk mendapatkan perbezaan antara dua tarikh, fungsi ini mengambil tiga argumen argumen pertama adalah bahagian perbezaan yang kita mahukan yang boleh menjadi tahun hari atau bulan atau detik dan dua tarikh dan hasilnya adalah bilangan bulat.

Fungsi DATEDIFF dalam VBA

Fungsi DATEDIFF dalam VBA mengira perbezaan antara dua tarikh dalam hari, bulan, suku, dan tahun.

Dalam cemerlang mencari perbezaan antara dua tarikh mempunyai banyak cara. Anda tidak memerlukan formula khas untuk mengira perbezaan antara dua tarikh.

Sebagai contoh lihat gambar di bawah.

Sekiranya kita ingin mengira perbezaan antara dua tarikh ini, kita boleh mengurangkan tarikh 1 dari tarikh 2.

Ini telah memberi kita perbezaan antara dua tarikh dalam beberapa hari. Inilah masalahnya dengan formula generik ini. Sekiranya kita memerlukan perbezaan bulan, tahun, suku dll ... itu tidak dapat memberi.

Dalam artikel ini, kami akan menunjukkan kepada anda cara menggunakan fungsi DateDiff ini di VBA.

Apakah Fungsi DATEDIFF dalam Excel VBA?

DATEDIFF dalam VBA bermaksud "Perbezaan Tarikh antara dua tarikh".

Fungsi ini dapat memberi kita jumlah selang waktu antara dua tarikh. Apabila kita ingin mencari perbezaan antara dua tarikh, kita dapat menemuinya dalam beberapa hari, minggu, bulan, suku, dll.

Untuk memahami fungsi lihat sintaks fungsi di bawah.

Selang: Ini hanyalah dengan cara apa anda mahu mengira perbezaan tarikh. Sama ada dalam beberapa hari, bulan, minggu, suku, dll ... Berikut adalah senarai yang sama.

Tarikh 1: Apakah tarikh pertama yang anda mahukan perbezaannya.

Tarikh 2: Apakah tarikh kedua yang anda mahukan perbezaannya dari Tarikh 1. Tarikh 1: Apakah tarikh pertama yang anda mahukan perbezaannya.

Berikut formula adalah Tarikh 2 - Tarikh 1.

[Hari Pertama Minggu]: Apakah hari pertama dalam seminggu? Kita boleh mengikuti hujah.

[Minggu Pertama Tahun Ini]: Apakah minggu pertama tahun ini. Kita boleh memasukkan hujah berikut.

Contoh Fungsi DATEDIFF dalam Excel VBA

Berikut adalah contoh excel VBA DateDiff.

Anda boleh memuat turun Templat Fungsi DateDiff VBA ini di sini - Templat Fungsi DateDiff VBA

Contoh # 1 - Untuk Mencari Perbezaan dalam Hari

Andaikan anda mempunyai dua tarikh "15-01-2018" dan "15-01-2019". Mari cari pelbagai jenis perbezaan untuk dua tarikh ini.

Langkah 1: Buat nama makro terlebih dahulu.

Kod:

 Sub TarikhDiff_Contoh1 () Sub Akhir 

Langkah 2: Tentukan Dua Pemboleh ubah sebagai Tarikh.

Kod:

 Sub TarikhDiff_Contoh1 () Dim Tarikh1 Sebagai Tarikh Dim Tarikh2 Sebagai Tarikh Akhir Sub 

Langkah 3: Sekarang untuk pemboleh ubah Date1 menetapkan "15-01-2018" dan untuk pemboleh ubah Date2 menetapkan "15-01-2019".

Kod:

 Sub TarikhDiff_Contoh1 () Tarikh Dim1 Sebagai Tarikh Dim Tarikh2 Sebagai Tarikh Tarikh1 = "15-01-2018" Tarikh2 = "15-01-2019" Tamat Sub 

Langkah 4: Sekarang untuk menyimpan hasil menentukan satu lagi pemboleh ubah sebagai Long.

Kod:

 Sub TarikhDiff_Contoh1 () Dim Tarikh1 Sebagai Tarikh Dim Tarikh2 Sebagai Tarikh Dim Hasil Sebagai Tarikh Panjang1 = "15-01-2018" Tarikh2 = "15-01-2019" Sub Akhir 

Langkah 5: Sekarang tetapkan nilai untuk pemboleh ubah ini melalui fungsi DATEDIFF di VBA

Kod:

 Sub DateDiff_Contoh1 () Dim Date1 Sebagai Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff (End Sub 

Langkah 6: Hujah pertama adalah jenis perbezaan yang kita perlukan antara kedua tarikh ini. Katakan kita perlu mencari jumlah hari, jadi berikan argumen sebagai "D".

Kod:

 Sub DateDiff_Contoh1 () Dim Date1 Sebagai Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", End Sub 

Langkah 7: Apakah tarikh pertama untuk mencari perbezaannya. Tarikh pertama kami adalah "15-01-2018" yang telah kami tetapkan pada pemboleh ubah "Date1". Oleh itu, berikan nama pemboleh ubah di sini.

Kod:

 Sub DateDiff_Contoh1 () Dim Date1 Sebagai Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", Date1, End Sub 

Langkah 8: Apakah tarikh kedua untuk mencari perbezaannya. Tarikh kedua adalah "15-01-2019" yang menyimpan nilai melalui pemboleh ubah "Date2".

Kod:

 Sub DateDiff_Contoh1 () Dim Date1 Sebagai Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", Date1, Date2) End Sub 

Step 9: Ignore the last two parameters. Now assign the value of variable “Result” through the VBA message box.

Code:

 Sub DateDiff_Example1() Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff("D", Date1, Date2) MsgBox Result End Sub 

Now run the code using F5 key or manually, we will get the difference between these two dates in a number of days.

So, from “15-01-2018” to 15-01-2019” the exact difference is 1 year, so we got 365 days as the result.

Like this, we can find the difference between two dates in time intervals.

Example #2 – To Find Difference in Months

Code:

 Sub DateDiff_Example2() Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff("M", Date1, Date2) MsgBox Result End Sub 

 

Run this code Using the F5 key or you can run manually to show the result as given below.

Example #3 – To Find Difference in Years

Code:

 Sub DateDiff_Example3() Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff("YYYY", Date1, Date2) MsgBox Result End Sub 

Run this code using the F5 key or manually to see the result.

Assignment as a Practice

I hope you have understood the function of VBA DATEDIFF. Take look at the below homework for you. Find the difference between the below dates in “Months”.

If you have not found the way below is the readymade code for you.

Code:

 Sub Assignment() Dim k As Long For k = 2 To 8 Cells(k, 3).Value = DateDiff("M", Cells(k, 1), Cells(k, 2)) Next k End Sub 

You can run this code manually or press the F5 key to see the result.