Fungsi VBA CDATE

Fungsi CDATE di VBA

VBA CDATE adalah fungsi konversi tipe data yang mengubah tipe data yang berupa teks atau string menjadi tipe data tanggal. Setelah nilai diubah menjadi tipe data tanggal maka kita dapat bermain-main dengan barang-barang tanggal.

Sintaks CDATE

Di bawah ini adalah sintaks dari fungsi CDATE di VBA.

Ekspresi: Ekspresi bisa berupa string atau nilai teks atau variabel yang berisi nilai yang akan dikonversi ke tipe data tanggal.

CDATE mengidentifikasi format tanggal dan waktu di komputer yang kami kerjakan dan mengubah nilai yang diberikan ke tipe data tanggal yang sama. Jika Anda hanya menyediakan hari dan bulan dan mengabaikan tahun, maka fungsi CDATE mengambil tahun sistem, menunjukkan hari dan bulan yang disediakan.

Kita akan melihat lebih banyak contoh di bagian bawah.

Bagaimana Cara Menggunakan Fungsi CDATE di Excel VBA?

Contoh Fungsi CDATE di excel vba.

Anda dapat mendownload Template Excel CDATE VBA ini di sini - Template Excel CDATE VBA

Contoh 1

Sebelum saya tunjukkan contoh CDATE lihat dulu kode di bawah ini.

Kode:

 Sub CDATE_Example1 () Dim k Sebagai String k = "25-12" MsgBox k End Sub 

Di atas untuk variabel "k", saya telah menetapkan nilai sebagai "25-12". Ketika saya menjalankan kode ini, kita akan melihat nilai yang sama di kotak pesan di VBA.

Tapi ini bisa diubah menjadi tanggal dengan menggunakan fungsi VBA CDATE. Untuk ini tentukan satu variabel lagi sebagai Tanggal.

Kode:

 Dim k1 Sebagai Tanggal 

Untuk variabel ini "k1" tetapkan fungsi CDATE dan berikan variabel "k" yang memegang string "25-12". Dan untuk kotak pesan tunjukkan nilai variabel "k1" bukan "k".

Kode:

k1 = CDate (k)

Sekarang jalankan kode dan lihat hasilnya di kotak pesan.

Jadi hasilnya adalah “25/12/2019”.

Perhatikan dengan saksama nilai yang kami berikan, kami telah menyediakan "25-12" yang belum kami berikan tahun.

Saat menulis artikel ini, tahun berjalan di sistem saya adalah 2019, jadi VBA CDATE mengonversi nilai string "25-12" menjadi saat ini dan menambahkan tahun sistem 2019 ke dalamnya. Jadi hasil akhirnya terbaca seperti ini 25/12/2019 yaitu 25 Desember 2019.

Contoh # 2

Sekarang, lihat kode di bawah ini.

Kode:

 Sub CDATE_Example2 () Dim k As Varian Dim kResult As Date k = 43889 kResult = CDate (k) MsgBox kResult End Sub 

Pada kode di atas untuk variabel "k", saya telah menerapkan nomor "43889". Kita semua tahu ini adalah nomor seri tetapi untuk variabel lain "KResult" kita telah mengubah nilai ini hingga saat ini dengan menggunakan fungsi "CDATE".

Hasil yang sama dari variabel "kResult" yang ditampilkan di kotak pesan.

Jalankan kodenya dan lihat keajaiban fungsi "CDATE".

Ini menunjukkan hasil sebagai "2/28/2020", jika Anda tidak terbiasa dengan tanggal di excel maka Anda pasti bertanya-tanya bagaimana ini bisa terjadi.

Misalnya, masukkan nomor yang sama (43889) di salah satu sel di spreadsheet.

Untuk ini, terapkan format sebagai "DD-MM-YYYY".

Sekarang klik Ok dan lihat hasilnya.

Sekarang hasilnya sudah berubah dari serial number menjadi date. Karena kami telah menerapkan format tanggal di atas nomor seri itu telah menunjukkan tanggal masing-masing.

Jadi ini berarti nomor seri 43889 sama dengan tanggal 28-02-2020.

Jadi dalam fungsi CDATE kode VBA kami telah mengeksekusi hal yang sama dengan mengubah nilai string menjadi tipe data tanggal.

Contoh # 3

Untuk contoh ini lihat kode di bawah ini.

 Sub CDATE_Example3 () Dim Value1 Dim Value2 Dim Value3 Value1 = "24 December 2019" Value2 = # 6/25/2018 # Value3 = "18:30:48 PM" MsgBox CDate (Value1) MsgBox CDate (Value2) MsgBox CDate ( Nilai3) End Sub 

Saat kita menjalankan kode ini kita akan mendapatkan hasil di bawah ini.

Jadi, semua nilai dikonversi ke tipe data tanggal dengan fungsi CDATE.

Hal-hal untuk diingat

  • CDATE hanya mengonversi angka dan nilai string ke tipe data tanggal.
  • Ini berguna saat kita menggunakannya dengan fungsi lain.
  • Jika nilai tipe data yang diberikan salah maka kita akan mendapatkan error type mismatch.
  • Karena tanggal dan waktu adalah bagian dari nomor seri, ia mengubah waktu serta waktu yang tepat.