Excel VBA CDate Funcție

Ați auzit despre funcția sau comanda prin care putem converti ceva în dată și oră? Da, împreună cu funcția Date, avem funcția CDate în VBA, care face acest lucru. CDate este funcția de excel, dar acest lucru se poate face și în VBA. CDate transformă orice în format Date standard. Acest lucru poate fi utilizat pentru conversia timpului, împreună cu data.

Sintaxa CDate este cea mai ușoară sintaxă pe care am văzut-o vreodată. CDate consideră ca expresie ca expresie Data și ora în orice format. Mai jos este sintaxa acesteia.

Trebuie doar să alimentăm orice număr, dată sau oră în orice format pe care îl avem, iar CDate îl va converti automat în format Date și Ora standard.

Cum să utilizați funcția Excel VCD CDate?

Vom învăța cum să utilizăm o funcție VBA CDate cu câteva exemple în Excel.

Puteți descărca acest șablon VBA CDate Excel aici - șablonul VBA CDate Excel

VBA CDate - Exemplul # 1

Vom lua un exemplu simplu mai întâi. În acest exemplu, vom încerca să convertim un tip simplu de dată într-un format standard, care este de fapt încorporat în excel în mod implicit.

Urmați pașii de mai jos pentru a utiliza funcția CDate în VBA.

Pasul 1: Deschideți un modul care este disponibil în fila meniu Insert, așa cum se arată mai jos.

Pasul 2: Scrie acum subprocedura VBA CDate în orice nume, așa cum se arată mai jos. Dar se recomandă să scrieți numele subprocedurii în numele lucrărilor efectuate în principal.

Cod:

 Sub VBA_CDate () End Sub 

Pasul 3: Acum declară o variabilă, să zicem că este Input1 ca String . Având în vedere tipul de date ca String, pentru că vom cita intrarea în combinația de numere și alfabeturi.

Cod:

 Sub VBA_CDate () Dim Input1 Ca String End Sub 

Pasul 4: Acum vom declara o altă variabilă prin care vom vedea ieșirea. Și această variabilă va fi utilizată pentru a vedea datele.

Cod:

 Sub VBA_CDate () Dim Input1 As String Dim FormatDate Ca Data End Sub 

Pasul 5: Alegeți acum orice dată care este în combinație de numere și alfabeturi și citați-o în virgule inversate, așa cum se arată mai jos.

Cod:

 Sub VBA_CDate () Dim Input1 As String Dim FormatDate Ca Data Input1 = "1 Sept, 2019" Sub Sub 

Pasul 6: Pentru a converti data de intrare într-un format standard, vom folosi funcția CDate așa cum se arată mai jos cu variabila FormatDate care a fost declarată mai sus. Și folosiți valoarea stocată în variabila Input1.

Cod:

 Sub VBA_CDate () Dim Input1 As String Dim FormatDate Ca Data Input1 = "1 Sept. 2019" FormatDate = CDate (Input1) End Sub 

Pasul 7: Și pentru a vedea ieșirea vom folosi Msgbox pentru a o atribui cu funcția FormatDate a datei.

Cod:

 Sub VBA_CDate () Dim Input1 As String Dim FormatDate Ca Data Input1 = "1 sept. 2019" FormatDate = CDate (Input1) MsgBox FormatDate End Sub 

Pasul 8: Acum executați codul apăsând tasta F5 sau făcând clic pe butonul Redare. Vom obține data pe care am ales-o ca 1 septembrie 2019, acum este convertită în formatul standard de date ca 01/09/2019, așa cum se arată mai jos.

Putem încerca diferite combinații multiple de date care există cu adevărat și să vedem ce fel de ieșire standard obținem.

VBA CDate - Exemplul # 2

În acest exemplu, vom vedea diferite tipuri de dată și oră care există și ce fel de ieșire am primi în timp ce folosim VBA CDate. Pentru aceasta, urmați pașii de mai jos:

Pasul 1: Scrieți subprocedura VBA CDate așa cum se arată mai jos.

Cod:

 Sub VBA_CDate2 () End Sub 

Pasul 2: Acum vom declara 3-4 variabile diferite de tip Date. Să declaram prima variabilă ca Date1 și să îi dăm tipul de date ca Data așa cum este arătat mai jos.

Cod:

 Sub VBA_CDate2 () Dim Data1 Ca dată de încheiere Sub 

Pasul 3: Acum atribuim orice număr pe care dorim să-l convertim în format Date. Am ales un număr aleatoriu ca 12345.

Cod:

 Sub VBA_CDate2 () Dim Date1 Ca Data Data1 = "12345" Sub 

Pasul 4: definiți o altă variabilă Date2 ca tip data Data așa cum se arată mai jos.

Cod:

 Sub VBA_CDate2 () Dim Date1 Ca Data Data1 = "12345" Dim Date2 Ca Data Sfarsire Sub 

Pasul 5: Acum din nou în variabila Date2, luați în considerare introducerea unei date în orice format. Aici am păstrat ca data de intrare 12/3/45.

Cod:

 Sub VBA_CDate2 () Dim Date1 ca dată Data1 = "12345" Dim Date2 ca dată Data2 = "3/12/45" Sub 

Pasul 6: Mai departe, vom declara din nou o altă variabilă Date3 ca dată.

Cod:

 Sub VBA_CDate2 () Dim Date1 Ca Data Data1 = "12345" Dim Date2 Ca Data Date2 = "12/3/45" Dim Date3 Ca Data de încheiere Sub 

Pasul 7: Aici vom atribui valoarea oricărui timp, așa cum se arată mai jos, la 12:10 în format 24 ore.

Cod:

 Sub VBA_CDate2 () Dim Date1 Ca Data Data1 = "12345" Dim Date2 Ca Data Date2 = "12/3/45" Dim Date3 Ca Data Data3 = "00:10:00" Sub 

Pasul 8: În sfârșit, vom declara o altă variabilă Date4 ca dată.

Cod:

 Sub VBA_CDate2 () Dim Date1 Ca Data Data1 = "12345" Dim Date2 As Data Date2 = "12/3/45" Dim Date3 As Data Date3 = "00:10:00" Dim Date4 Ca Data de încheiere Sub 

Pasul 9: Și aici vom da o valoare zecimală de genul 0.123 sau puteți alege orice valoare după cum este necesar.

Cod:

 Sub VBA_CDate2 () Dim Date1 Ca Data Data1 = "12345" Dim Date2 Ca Data Date2 = "12/3/45" Dim Date3 Ca Data Date3 = "00:10:00" Dim Date4 Ca Data Data4 = "0.123" Sub 

Acum există 2 moduri de a vedea ieșirea valorilor stocate în diferite variabile declarate mai sus. MsgBox ne va permite să vedem toate valorile simultan, dar folosind Debug.print ne va permite să vedem toate variabilele de ieșire dintr-o dată.

Pasul 10: Deci, aici este mai bine dacă alegem Debug.Print așa cum se arată mai jos. Și în aceeași linie, alocați toată variabila începând de la data 1 până la data 4.

Cod:

 Sub VBA_CDate2 () Dim Date1 Ca Data Data1 = "12345" Dim Date2 Ca Data Date2 = "12/3/45" Dim Date3 Ca Data Date3 = "00:10:00" Dim Date4 Ca Data Data4 = "0.123" Debug. Tipărire Data1, Data2, Data3, Data4 Încheierea Sub 

Pasul 11: Și pentru a vedea ieșirea, vom folosi fereastra imediată, așa cum se arată mai jos. Pentru a accesa acest lucru, accesați fila meniu Vizualizare și selectați Fereastră imediată, așa cum se arată mai jos.

Pasul 12: Acum rulați codul apăsând tasta F5 sau făcând clic pe butonul Redare. Vom vedea, tipul de date ne-a dat ieșirea, dar nu este în formatul standard de date.

Pasul 13: Pentru a obține datele standard, vom folosi și CDate aici. Deci, vom atribui CDate pentru fiecare dată și oră pe care le-am folosit pentru diferite variabile, așa cum se arată mai jos.

Cod:

 Sub VBA_CDate2 () Dim Date1 Ca Data Data1 = CDate ("12345") Dim Date2 As Data Date2 = CDate ("12/3/45") Dim Date3 As Data Date3 = CDate ("00:10:00") Dim Date4 Ca Data Data4 = CDate ("0.123") Debug.Imprimare Data1, Data2, Data3, Data4 Încheiere Sub 

Pasul 14: Acum rulați codul apăsând tasta F5 sau făcând clic pe butonul Redare.

Vom vedea rezultatele atât ale datei cât și ale CDate sunt aceleași, dar există o diferență comună de bază între ambele. Și adică CDate poate converti orice tip de numere în format standard de date.

Pasul 15: Să încercăm orice text sau alfabet cu CDate și să vedem ce obținem. Deci, am introdus un text aleatoriu ca abc în variabila Date4 .

Cod:

 Sub VBA_CDate2 () Dim Date1 Ca Data Data1 = CDate ("12345") Dim Date2 As Data Date2 = CDate ("12/3/45") Dim Date3 As Data Date3 = CDate ("00:10:00") Dim Date4 Ca Data Data4 = CDate ("abc") Debug.Imprimare Data1, Data2, Data3, Data4 Încheiere Sub 

Pasul 16: Acum rulați din nou codul. Vom primi o casetă de mesaj cu un mesaj de eroare ca nepotrivire de tip . Acest lucru se datorează faptului că CDate nu poate citi și converti textul într-un format standard pentru data și ora.

Pro și contra funcției CDBA Excel VBA

  • Aceasta poate converti orice dată sau oră în format standard, după cum este necesar.
  • VBA CDate interpretează orice număr ca valoare Date și mai târziu convertește-l într-un format standard.
  • Nu poate interpreta și converti textul în formatul datei.

Lucruri de amintit

  • CDate poate considera numerele doar ca intrare, dar acest număr poate fi în orice format.
  • Valoarea textului nu poate fi convertită.
  • Dacă alimentăm o dată sau o dată care este deja în formatul standard, atunci va reveni din nou aceeași valoare ca și ieșirea.
  • Data și funcția CDate funcționează în același mod. Întrucât prin CDate putem converti atât ora cât și data.

Articole recomandate

Acesta este un ghid pentru funcția CDBA VBA. Aici vom discuta despre modul de utilizare a funcției CDate în Excel, folosind codul VBA, împreună cu exemple practice și șablon Excel descărcabil. De asemenea, puteți parcurge și alte articole sugerate -

  1. Formatul de date VBA
  2. Funcția Excel DATEDIF
  3. VBA DateSerial
  4. Funcția Excel DATEDIF

Categorie: