VBA IsDate - Bagaimana cara menggunakan Fungsi Excel VBA IsDate?

Fungsi Excel VBA IsDate

IsDate adalah fungsi VBA yang menguji sama ada nilai yang diberikan adalah tarikh atau tidak. Sekiranya nilai rujukan atau nilai rujukan yang dibekalkan adalah nilai tarikh maka kita akan mendapat hasilnya sebagai "BENAR", jika nilai itu bukan nilai tarikh maka kita akan mendapatkan hasilnya sebagai "SALAH". Jadi, hasilnya adalah nilai BOOLEAN iaitu sama ada BENAR atau SALAH.

Berikut adalah sintaks fungsi IsDate.

Ungkapan itu tidak lain adalah nilai yang ingin kita uji, sama ada tarikhnya atau tidak.

Bagaimana cara menggunakan Fungsi Isdate VBA?

Kami akan menguji sama ada nilai "5.01.19" adalah nilai tarikh atau tidak.

Untuk permulaan pertama ini, prosedur makro excel.

Kod:

Sub IsDate_Contoh1 () Akhir Sub

Tentukan pemboleh ubah untuk menyimpan nilai tarikh, dan kerana nilainya akan menjadi nilai tarikh, tetapkan jenis data sebagai "Tarikh" sahaja.

Kod:

Sub IsDate_Example1 () Dim MyDate Sebagai Tarikh Akhir Sub

Sekarang tetapkan nilai "5.1.19" ke pemboleh ubah "MyDate."

Kod:

Sub IsDate_Example1 () Dim MyDate Seperti Tarikh MyDate = "5.1.19" Akhir Sub

Buka kotak mesej di VBA sekarang.

Kod:

Sub IsDate_Example1 () Dim MyDate Seperti Tarikh MyDate = "5.1.19" MsgBox (Sub Akhir

Dalam kotak mesej ini, kami akan menguji sama ada nilai tarikh yang dibekalkan kepada pemboleh ubah "MyDate" adalah tarikh atau tidak dengan menggunakan fungsi "IsDate". Pertama, buka fungsi "IsDate".

Kod:

Sub IsDate_Example1 () Dim MyDate Seperti Tarikh MyDate = "5.1.19" MsgBox IsDate (Akhir Sub

Ungkapan adalah nilai yang sedang kita uji untuk mengetahui sama ada Tarikh atau tidak. Oleh kerana kami sudah menyimpan nilai ke pemboleh ubah "MyDate", berikan nama pemboleh ubah sahaja.

Kod:

Sub IsDate_Example1 () Dim MyDate Seperti Tarikh MyDate = "5.1.19" MsgBox IsDate (MyDate) Akhir Sub

Ok, sekarang jalankan kod dan lihat apa yang kita dapat di kotak mesej.

Wah !!! Hasilnya adalah BENAR .

Anda pasti tertanya-tanya bagaimana ia mengenali nilai "5.1.19" sebagai tarikh.

Sebab mengapa ia mengembalikan hasilnya sebagai BENAR kerana apabila anda melihat nilai yang diberikan "5.1.19", itu adalah bentuk singkat dari tanggal "05.01.2019", jadi excel cukup cemerlang untuk mengenalinya sebagai tarikh, jadi hasilnya adalah BENAR.

Sekarang inilah yang sukar, untuk nilai yang sama, apa yang akan kita lakukan ialah kita mengubah bentuk pendek tahun ini dari 19 hingga 2019.

Kod:

Sub IsDate_Example1 () Dim MyDate As String MyDate = "5.1.2019" MsgBox IsDate (MyDate) Sub Akhir

Sekarang jalankan kod dan lihat hasilnya.

Kali ini ia mengembalikan hasilnya sebagai PALSU kerana bahagian "hari dan bulan" dalam bentuk pendek, tetapi bahagian tahun dalam bentuk penuh "YYYY", jadi ISDATE tidak dapat mengenali bahawa ia mempunyai tarikh, jadi hasilnya adalah SALAH.

Sekarang, lihat kod di bawah.

Kod:

Sub IsDate_Example1 () Dim MyDate Sebagai String MyDate = "05.01.2019" MsgBox IsDate (MyDate) Sub Akhir

Saya telah menyebut format hari penuh dan bulan penuh dengan menggunakan 0. Mari jalankan kod dan lihat hasil fungsi IsDate.

Kali ini juga kita pergi mendapat hasilnya SALAH .

Sekarang ubah kodnya seperti berikut.

Kod:

Sub IsDate_Example1 () Dim MyDate As String MyDate = "05/01/2019" MsgBox IsDate (MyDate) Akhir Sub

Daripada titik (.) Sebagai pemisah, kami memasukkan garis miring ke depan (/) sebagai pemisah. Sekarang jalankan kod dan lihat hasilnya.

Kali ini kami mendapat hasilnya sebagai BENAR .

Inilah sebabnya saya telah memberitahu anda pada awal artikel bahawa "Tarikh" adalah perkara sensitif.

Sekarang apa yang akan saya lakukan ialah saya menggabungkan tarikh dan masa bersama.

Kod:

Sub IsDate_Example1 () Dim MyDate As String MyDate = "05/01/2019 15:26:24" MsgBox IsDate (MyDate) Akhir Sub

Yang saya tambahkan di atas adalah bahagian waktu "15:26:24" di hadapan tarikh. Sekarang jalankan kod dan lihat hasilnya.

Kali ini juga, kami mendapat hasilnya sebagai BENAR kerana TARIKH & MASA dalam excel adalah perkara yang sama dan disimpan sebagai nombor siri. Nombor bulat mewakili bahagian tarikh, dan tempat perpuluhan mewakili bahagian masa.

Perkara yang Perlu Diingat di sini

  • IsDate mengembalikan hasil jenis Boolean, iaitu sama ada BENAR atau SALAH.
  • IsDate hanya tersedia sebagai fungsi VBA.
  • Hanya tarikh berformat yang sah dianggap sebagai tarikh, atau yang lain akan dianggap sebagai nilai teks dan mengembalikan hasilnya sebagai SALAH.

Artikel menarik...