Perbandingan tanggal di VBA
Penentuan jenis
Tidak perlu mengonversi tanggal ke tipe data "Tanggal" untuk membuat perbandingan jika sudah ada dalam jenis itu. Anda dapat mengetahui apakah suatu variabel adalah "Tanggal" menggunakan beberapa metode. Tinjau bagian deklarasi di awal prosedur VBA. Bagian ini adalah bagian di mana Anda menyatakan semua variabel menggunakan kata kunci "Dim". Variabel tanggal Anda akan dideklarasikan dengan instruksi seperti berikut: "Dim d1 sebagai Tanggal". Cara lain untuk mengetahui apakah variabel Anda adalah jenis "Tanggal" adalah untuk meninjau tugas yang dibuat untuk variabel itu. Penugasan ini akan menggunakan karakter "#", yang menunjukkan jenis "Tanggal". Sebagai contoh, instruksi berikut menetapkan tanggal "12/1/2001" ke variabel "D1" yang merupakan "Tanggal".
D1 = # 12/1/2001 #
Cara mengonversi ke tipe data "Tanggal"
Untuk membandingkan tanggal dalam VBA Anda harus terlebih dahulu memiliki dua tanggal yang disimpan dalam "Tanggal", yang merupakan salah satu dari berbagai jenis nilai dalam VBA. Jenis "Tanggal" adalah contoh khusus dari seluruh tipe data, jadi membandingkan tanggal pada dasarnya sama dengan membandingkan bilangan bulat. Jika tanggal Anda belum di "Tanggal", Anda harus mengonversinya. Anda dapat melakukannya menggunakan fungsi CDate. Sebagai contoh, jalankan instruksi berikut untuk mengubah string "12/1/2001" menjadi tipe "Date":
D1 = CDate ("12/1/2001")
Perbandingannya
Jika Anda ingin memeriksa apakah tanggal dalam variabel "Tanggal" muncul sebelum tanggal, gunakan simbol 'kurang dari' seperti yang ditunjukkan pada contoh berikut:
Jika (d1 <d2)
Gunakan simbol 'lebih besar dari' untuk memeriksa apakah satu tanggal terjadi setelah yang lain, dan gunakan simbol 'sama' untuk mengetahui apakah nilai dari kedua variabel mengacu pada tanggal yang sama.
Program sampel
Tuliskan contoh program yang mengubah dan membandingkan tanggal, sehingga Anda dapat merujuk ke kode itu saat menulis program VBA yang lebih kompleks untuk melakukan prosedur itu. Buka lingkungan pemrograman di salah satu aplikasi Office dengan mengklik tombol "Visual Basic" di tab "Pengembang". Kemudian tempelkan program berikut di jendela tengah lingkungan. Ia menggunakan fungsi "CDate" untuk mengubah string ke tanggal dan membuat tiga perbandingan yang berbeda antara dua di antaranya. Jalankan program dengan menekan "F5" dan amati hasilnya dengan memeriksa jendela "Segera".
Public Sub CompareDates () Dim d1, d2 As Tanggal d1 = CDate ("12/1/2001") d2 = CDate ("12/1/2002") Jika (d1 d2) Kemudian Debug.Print "Tanggal 1 terjadi lebih lambat dari tanggal 2. " Jika (d1 = d2) Kemudian Debug.Print "Tanggal 1 sama dengan tanggal 2." Akhir Sub