VBA IsDate - Kuidas kasutada Exceli VBA IsDate'i funktsiooni?

Lang L: none (table-of-contents)

Exceli VBA IsDate funktsioon

IsDate on funktsioon VBA, mis testib, kas antud väärtus on kuupäev või mitte. Kui sisestatud väärtus või vahemiku võrdlusväärtus on kuupäeva väärtus, siis saame tulemuse väärtuseks “TÕENE”, kui väärtus pole kuupäeva väärtus, saame tulemuse väärtuseks “VALE”. Seega on tulemuseks BOOLEANi väärtus, st kas TRUE või FALSE.

Allpool on funktsiooni IsDate süntaks.

Avaldus pole midagi muud kui väärtus, mida proovime testida, olenemata sellest, kas see on kuupäev või mitte.

Kuidas kasutada VBA IsDate funktsiooni?

Testime, kas väärtus “5.01.19” on kuupäeva väärtus või mitte.

Selle esimese alguse jaoks on Exceli makroprotseduur.

Kood:

Sub IsDate_Example1 () End Sub

Määrake muutuja kuupäeva väärtuse salvestamiseks ja kuna väärtus on kuupäeva väärtus, määrake andmetüübiks ainult kuupäev.

Kood:

Sub IsDate_Example1 () Dim MyDate kui kuupäeva lõpp Sub

Nüüd määrake muutujale „MyDate” väärtus „5.1.19”.

Kood:

Sub IsDate_Example1 () Dim MyDate As Date MyDate = "5.1.19" End Sub

Avage VBA-s kohe sõnumikast.

Kood:

Sub IsDate_Example1 () Dim MyDate as Date MyDate = "5.1.19" MsgBox (End Sub

Selles teatekastis testime funktsiooni „IsDate” abil, kas muutujale „MyDate” esitatud kuupäeva väärtus on kuupäev või mitte. Esmalt avage funktsioon „IsDate”.

Kood:

Sub IsDate_Example1 () Dim MyDate as Date MyDate = "5.1.19" MsgBox IsDate (End Sub

Avaldis on väärtus, mida testime, et leida, kas see on kuupäev või mitte. Kuna oleme juba muutujale „MyDate” väärtuse salvestanud, edastage muutuja nimi ainult.

Kood:

Sub IsDate_Example1 () Dim MyDate as Date MyDate = "5.1.19" MsgBox IsDate (MyDate) End Sub

Ok, käivitage nüüd kood ja vaadake, mida me saame sõnumikastist.

Vau !!! Tulemus on TÕSI .

Peate kindlasti mõtlema, kuidas see tunnustas kuupäeva väärtusena 5.1.19.

Põhjus, miks see on andnud tulemuseks TÕENE, sest kui vaadata antud väärtust “5.1.19”, siis on see kuupäeva “05.01.2019” lühike vorm , nii et Excel on piisavalt geniaalne, et seda kuupäevana ära tunda, seega tulemus on TÕSI.

Nüüd on siin keeruline asi, sama väärtuse jaoks muudame aasta lühivormi 19-st 2019-ni.

Kood:

Sub IsDate_Example1 () Dim MyDate Stringina MyDate = "5.1.2019" MsgBox IsDate (MyDate) End Sub

Nüüd käivitage kood ja vaadake tulemust.

Seekord on tulemus tagastatud FALSE, kuna kuupäeva osa „päev ja kuu” on lühikeses vormis, kuid aastaosa on täis kujul „AAAA”, nii et ISDATE ei saa tuvastada, et sellel on kuupäev, seega tulemus on FALSE.

Nüüd vaadake allolevat koodi.

Kood:

Sub IsDate_Example1 () Dim MyDate Stringina MyDate = "05.01.2019" MsgBox IsDate (MyDate) End Sub

Olen maininud terve päeva ja terve kuu vormingut, kasutades 0. Kasutame koodi ja vaatame funktsiooni IsDate tulemust.

Seekord saime ka tulemuse valeks .

Nüüd muutke koodi järgmiselt.

Kood:

Sub IsDate_Example1 () Dim MyDate Stringina MyDate = "05.01.2019" MsgBox IsDate (MyDate) End Sub

Punkti (.) Kui eraldaja asemel sisestasime eraldajaks edasi-kaldkriipsu (/). Nüüd käivitage kood ja vaadake tulemust.

Seekord saime tulemuseks TÕENE .

See on põhjus, miks ma ütlesin teile artikli alguses, et "Kuupäev" on tundlik asi.

Nüüd ühendan kuupäeva ja kellaaja kokku.

Kood:

Sub IsDate_Example1 () Dim MyDate Stringina MyDate = "01.01.2019 15:26:24" MsgBox IsDate (MyDate) End Sub

Eespool olen lisanud kuupäeva ette aja „15:26:24” osa. Nüüd käivitage kood ja vaadake tulemust.

Ka seekord saime tulemuseks TÕENE, sest Exceli DATE & TIME on samad asjad ja salvestatud seerianumbritena. Kogu number tähistab kuupäeva osa ja kümnendkohad tähistavad ajaosa.

Siinkohal meeldejäävad asjad

  • IsDate tagastab Boole'i ​​tüüpi tulemuse, st kas TRUE või FALSE.
  • IsDate on saadaval ainult VBA funktsioonina.
  • Kuupäevana käsitletakse ainult kehtivaid vormindatud kuupäevi, vastasel juhul käsitletakse seda tekstiväärtustena ja tulemus tagastatakse VÄÄRTena.

Huvitavad Artiklid...