CDATE funkció a VBA-ban
A VBA CDATE egy adattípus-konvertáló függvény, amely a szöveget vagy a karakterláncot tartalmazó adattípust dátum típusúvá alakítja. Miután az érték dátum adattípussá lett konvertálva, akkor játszhatunk a dátumokkal.
A CDATE szintaxisa
Az alábbiakban a CDBA függvény szintaxisa található a VBA-ban.
Kifejezés: A kifejezés lehet karakterlánc vagy szövegérték, vagy olyan változó, amely a dátum adattípusává konvertálandó értéket tartalmaz.
A CDATE azonosítja a dátum és az idő formátumát a számítógépen, amelyen dolgozunk, és átalakítja a szállított értéket ugyanarra a dátumra. Ha csak napot és hónapot ad meg, és figyelmen kívül hagyja az évet, akkor a CDATE funkció a rendszert évre veszi, megjeleníti a szállított nappal és hóval együtt.
Az alábbi részben újabb és újabb példákat fogunk látni.
Hogyan használható a CDATE függvény az Excel VBA-ban?
Példák a CDATE funkcióra az excel vba-ban.
Ezt a VBA CDATE Excel sablont innen töltheti le - VBA CDATE Excel sablont1. példa
Mielőtt bemutatnám a CDATE példáját, először nézze meg az alábbi kódot.
Kód:
CDATE_Példa1 () Dim k As String k = "25-12" MsgBox k End Sub
A fentiekben a „k” változóhoz az értéket „25-12” -ként adtam meg. Amikor végrehajtom ezt a kódot, ugyanazt az értéket látjuk a VBA üzenetmezőjében.
De ez a VBA CDATE függvény segítségével dátumra konvertálható. Ehhez adjon meg még egy változót Dátumként.
Kód:
Dim k1 As Date
Ehhez a „k1” változóhoz rendelje hozzá a CDATE függvényt, és adja meg a „k” változót, amely a „25-12” karakterláncot tartja. És az üzenet mezőben mutassa meg a „k1” változó értékét a „k” helyett.
Kód:
k1 = CDate (k)
Most futtassa a kódot, és nézze meg az eredményt egy üzenetmezőben.
Az eredmény tehát „2019.12.25.”.
Közelről nézve az általunk szállított értéket, „25–12” -t szállítottunk, amelyet évente nem szállítottunk.
Miközben ezt a cikket írtam, az aktuális év a rendszeremben 2019-es volt, így a VBA CDATE a „25-12” karakterláncot a mai napig konvertálta, és hozzáadta a 2019-es rendszerévet. Tehát a végső eredmények így olvashatók 2019.12.25-én, azaz 2019. december 25-én.
2. példa
Most nézze meg az alábbi kódot.
Kód:
Sub CDATE_Example2 () Dim k As Variant Dim kResult As Date k = 43889 kResult = CDate (k) MsgBox kResult End Sub
A „k” változó fenti kódjában a „43889” számot alkalmaztam. Mindannyian tudjuk, hogy ez egy sorszám, de egy másik „KResult” változó esetében ezt az értéket a „CDATE” funkcióval alakítottuk át dátumra.
A kResult változó ugyanaz az eredménye látható az üzenetmezőben.
Futtassa a kódot, és nézze meg a „CDATE” funkció varázslatát.
Az eredmény „2020.02.28.”, Ha nem ismeri a dátumokat az excel programban, akkor azon kell gondolkodnia, hogyan történt ez.
Például írja be ugyanazt a számot (43889) a táblázat egyik cellájába.
Ehhez alkalmazza a „NN-HH-ÉÉÉÉ” formátumot.
Most kattintson az Ok gombra, és nézze meg az eredményt.
Most az eredmény sorozatszámról napjainkra változott. Mivel a dátumformátumot a sorszám fölé helyeztük, az az adott dátumot mutatta.
Tehát ez azt jelenti, hogy a 43889 sorozatszám megegyezik a 2020-02-28 dátummal.
Tehát a VBA kódunkban a CDATE függvény ugyanazt hajtotta végre, a karakterlánc értékének dátum adattípussá konvertálásával.
3. példa
Ebben a példában nézze meg az alábbi kódot.
Sub CDATE_Example3() Dim Value1 Dim Value2 Dim Value3 Value1 = "December 24, 2019" Value2 = #6/25/2018# Value3 = "18:30:48 PM" MsgBox CDate(Value1) MsgBox CDate(Value2) MsgBox CDate(Value3) End Sub
When we run this code we will get the below results.
So, all the values are converted to the date data type with the CDATE function.
Things to Remember
- CDATE converts only numbers and string values to the date data type.
- This is useful when we use it with other functions.
- If the wrong data type value is supplied then we will get type mismatch error.
- Since date and time are part of serial number it converts time as well as proper time.