Fungsi DateDiff VBA

Fungsi DATEDIFF di VBA adalah fungsi inbuilt di VBA yang juga dikategorikan di bawah fungsi tanggal dan waktu di VBA, fungsi ini digunakan untuk mendapatkan perbedaan antara dua tanggal, fungsi ini mengambil tiga argumen argumen pertama adalah bagian mana dari perbedaan yang kita inginkan yang bisa berupa tahun hari atau bulan atau detik dan dua tanggal dan hasilnya adalah bilangan bulat.

Fungsi DATEDIFF di VBA

Fungsi DATEDIFF di VBA menghitung perbedaan antara dua tanggal dalam hari, bulan, kuartal, dan tahun.

Dalam pencarian excel perbedaan antara dua tanggal memiliki banyak cara. Anda tidak memerlukan rumus khusus untuk menghitung selisih antara dua tanggal.

Sebagai contoh lihat gambar di bawah ini.

Jika kita ingin menghitung selisih antara dua tanggal ini, kita cukup mengurangkan tanggal 1 dari tanggal 2.

Itu telah memberi kita perbedaan antara dua tanggal dalam beberapa hari. Inilah yang menjadi masalah dengan rumus umum ini. Jika kita membutuhkan perbedaan dalam bulan, tahun, kuartal dll… itu tidak dapat memberi.

Di artikel ini, kami akan menunjukkan kepada Anda bagaimana menggunakan fungsi DateDiff ini di VBA.

Apa Fungsi DATEDIFF di Excel VBA?

DATEDIFF dalam VBA adalah singkatan dari “Perbedaan Tanggal antara dua tanggal”.

Fungsi ini dapat memberi kita jumlah interval waktu antara dua tanggal. Jika kita ingin mencari perbedaan antara dua tanggal, kita dapat menemukannya dalam hari, minggu, bulan, kuartal, dll ..

Untuk memahami fungsinya, lihat sintaks fungsi di bawah ini.

Interval: Ini tidak lain adalah dengan cara apa Anda ingin menghitung perbedaan tanggal. Entah itu dalam hari, bulan, minggu, kuartal, dll… Di bawah ini adalah daftarnya.

Tanggal 1: Tanggal berapa pertama kali Anda ingin menemukan perbedaannya.

Tanggal 2: Tanggal kedua Anda ingin mencari perbedaan dari Tanggal 1. Tanggal 1: Tanggal pertama apa Anda ingin mencari perbedaan.

Berikut rumusnya adalah Tanggal 2 - Tanggal 1.

[Hari Pertama dalam Seminggu]: Apa hari pertama dalam seminggu? Kita bisa mengikuti argumen.

[Minggu Pertama Tahun Ini]: Apa minggu pertama dalam setahun. Kita bisa memasukkan argumen berikut.

Contoh Fungsi DATEDIFF di Excel VBA

Berikut ini adalah contoh dari excel VBA DateDiff.

Anda dapat mengunduh Templat Fungsi DateDiff VBA ini di sini - Templat Fungsi DateDiff VBA

Contoh # 1 - Menemukan Perbedaan dalam Hari

Asumsikan Anda memiliki dua tanggal “15-01-2018” dan “15-01-2019”. Mari kita temukan semua jenis perbedaan untuk kedua tanggal ini.

Langkah 1: Buat nama makro terlebih dahulu.

Kode:

 Sub DateDiff_Example1 () End Sub 

Langkah 2: Tentukan Dua Variabel sebagai Tanggal.

Kode:

 Sub DateDiff_Example1 () Redup Tanggal1 Sebagai Tanggal Redup Tanggal2 Sebagai Tanggal Akhir Sub 

Langkah 3: Sekarang untuk variabel Date1 tetapkan "15-01-2018" dan untuk variabel Date2 tetapkan "15-01-2019".

Kode:

 Sub DateDiff_Example1 () Redup Tanggal1 Sebagai Tanggal Redup Tanggal2 Sebagai Tanggal Tanggal1 = "15-01-2018" Date2 = "15-01-2019" End Sub 

Langkah 4: Sekarang untuk menyimpan hasil, tentukan satu variabel lagi sebagai Long.

Kode:

 Sub DateDiff_Example1 () Redup Tanggal1 Sebagai Tanggal Redup Tanggal2 Sebagai Tanggal Redup Hasil As Long Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub 

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

Kode:

 Sub DateDiff_Example1 () Redup Tanggal1 Sebagai Tanggal Redup Tanggal2 Sebagai Tanggal Dim Hasil Sebagai Long Date1 = "15-01-2018" Date2 = "15-01-2019" Hasil = DateDiff (End Sub 

Langkah 6: Argumen pertama adalah perbedaan macam apa yang kita butuhkan antara kedua tanggal ini. Katakanlah kita perlu mencari jumlah hari, jadi berikan argumen sebagai "D".

Kode:

 Sub DateDiff_Example1 () Redup Tanggal1 Sebagai Tanggal Redup Tanggal2 Sebagai Tanggal Dim Hasil Sebagai Long Date1 = "15-01-2018" Date2 = "15-01-2019" Hasil = DateDiff ("D", End Sub 

Langkah 7: Apa tanggal pertama untuk menemukan perbedaannya. Tanggal pertama kita adalah “15-01-2018” yang telah kita tetapkan ke variabel “Date1”. Jadi berikan nama variabel di sini.

Kode:

 Sub DateDiff_Example1 () Redup Tanggal1 Sebagai Tanggal Redup Tanggal2 Sebagai Tanggal Redup Hasil Sebagai Long Date1 = "15-01-2018" Date2 = "15-01-2019" Hasil = DateDiff ("D", Date1, End Sub 

Langkah 8: Apa tanggal kedua untuk menemukan perbedaannya. Tanggal kedua adalah "15-01-2019" yang menyimpan nilai melalui variabel "Tanggal2".

Kode:

 Sub DateDiff_Example1 () Redup Tanggal1 Sebagai Tanggal Redup Tanggal2 Sebagai Tanggal Redup Hasil As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Hasil = 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.