Excel VBA CDate funkcija

Jeste li čuli za funkciju ili naredbu kojom možemo bilo što pretvoriti u datum i vrijeme? Da, uz funkciju Date, u VBA imamo i funkciju CDate koja to čini. CDate je funkcija excela, ali to se može učiniti i u VBA. CDate pretvara bilo što osim u standardni format datuma. To se može koristiti za pretvaranje vremena, zajedno s datumom.

Sintaksa CDate je najlakša sintaksa koju smo ikada vidjeli. CDate smatra samo izraz kao što su Datum i vrijeme u bilo kojem formatu kao ulaz. Ispod je sintaksa.

Trebamo unijeti bilo koji broj, datum ili vrijeme u bilo kojem obliku koji imamo i CDate će to automatski pretvoriti u standardni format datuma i vremena.

Kako se koristi Excel VBA CDate funkcija?

Naučit ćemo kako koristiti VBA CDate funkciju s nekoliko primjera u Excelu.

Ovdje možete preuzeti ovaj VBA CDate Excel predložak - VBA CDate Excel predložak

VBA CDate - Primjer # 1

Prvo ćemo uzeti jednostavan primjer. U ovom ćemo primjeru pokušati pretvoriti jednu jednostavnu vrstu datuma u standardni format koji je u stvarnosti ugrađen u excel.

Slijedite dolje navedene korake za korištenje funkcije CDate u VBA.

Korak 1: Otvorite modul koji je dostupan na kartici izbornika Umetanje, kao što je prikazano u nastavku.

Korak 2: Sada napišite podprocedura VBA CDate u bilo koje ime kao što je prikazano u nastavku. Ali preporučuje se da se ime podprocedura uglavnom piše u ime obavljenog posla.

Kodirati:

 Sub VBA_CDate () Kraj Sub 

Korak 3: Sada deklarirajte varijablu recimo da je Input1 kao String . Smatrajući vrstu podataka Stringom jer citiramo unos u kombinaciji brojeva i alfabeta.

Kodirati:

 Sub VBA_CDate () Dim unosa1 kao string string Sub 

Korak 4: Sada ćemo proglasiti drugu varijablu prema kojoj ćemo vidjeti izlaz. I ova će se varijabla koristiti za pregled datuma.

Kodirati:

 Sub VBA_CDate () Dim ulaz 1 kao niz Dim FormatDate kao datum završetka Sub 

Korak 5: Sada odaberite bilo koji datum koji je u kombinaciji brojeva i abecede i citirajte ih u obrnutim zarezima kao što je prikazano u nastavku.

Kodirati:

 Sub VBA_CDate () Dim unosa1 kao niz Dim FormatDate kao datum unosa1 = "1. rujna 2019." Kraj 

Korak 6: Za pretvaranje datuma unosa u standardni format koristit ćemo funkciju CDate kao što je prikazano u nastavku s varijablom FormatDate koja je deklarirana gore. I koristite vrijednost pohranjenu u varijabli Input1.

Kodirati:

 Sub VBA_CDate () Dim unosa1 kao niz Dim FormatDate kao datum unosa1 = "1. rujna 2019." FormatDate = CDate (unos1) Kraj pot 

Korak 7: A za pregled rezultata koristit ćemo ga Msgbox da bismo ga dodijelili funkciji FormatDate Date.

Kodirati:

 Sub VBA_CDate () Dim Input1 Kao string Dim FormatDate Kao datum unosa1 = "1. rujna 2019" FormatDate = CDate (Ulaz1) MsgBox FormatDate Kraj Pot 

Korak 8: Sada pokrenite kôd pritiskom na tipku F5 ili klikom na gumb Glazba. Dobit ćemo datum koji smo odabrali 1. rujna 2019. godine, a sada je pretvoren u standardni format datuma 9.1.2019. Kao što je prikazano u nastavku.

Možemo isprobati različite kombinacije datuma koji stvarno postoje i vidjeti kakav standardni izlaz dobivamo.

VBA CDate - primjer br. 2

U ovom ćemo primjeru vidjeti različite vrste datuma i vremena koje postoje i kakav izlaz ćemo dobiti tijekom upotrebe VBA CDate. Za to slijedite dolje navedene korake:

Korak 1: Napišite podprocedura VBA CDate kao što je prikazano u nastavku.

Kodirati:

 Sub VBA_CDate2 () Kraj Sub 

Korak 2: Sada ćemo proglasiti 3-4 različite varijable Data Type Date. Deklariramo prvu varijablu kao Date1 i damo joj tip podataka kao Datum kao što je prikazano u nastavku.

Kodirati:

 Sub VBA_CDate2 () Dim Datum1 Kao Datum Kraj Sub 

Korak 3: Sada dodijelite bilo koji broj koji ga želimo pretvoriti u format datuma. Odabrali smo slučajni broj kao 12345.

Kodirati:

 Sub VBA_CDate2 () Dim Datum1 Kao Datum Datum1 = "12345" Kraj Sub 

Korak 4: Na sličan način definirajte drugu varijablu Date2 kao vrstu datuma Datum kao što je prikazano u nastavku.

Kodirati:

 Sub VBA_CDate2 () Dim Datum1 Kao Datum Datum1 = "12345" Dim Datum2 Kao Datum Kraj Sub 

Korak 5: Sada opet u varijabli Date2, razmislite o dodavanju datuma u bilo koji format. Ovdje smo zadržali 12/3/45 kao naš ulaz.

Kodirati:

 Sub VBA_CDate2 () Dim Date1 Kao Datum Date1 = "12345" Dim Date2 Kao Datum Date2 = "12/3/45" Kraj Sub 

Korak 6: Nadalje, ponovno ćemo proglasiti drugu varijablu Date3 kao Datum.

Kodirati:

 Pod VBA_CDate2 () Dim Datum1 Kao Datum Datum1 = "12345" Dim Datum2 Kao Datum Datum2 = "12/3/45" Dim Datum3 Kao Datum Kraj Sub 

Korak 7: Ovdje ćemo dodijeliti vrijednost za bilo koje vrijeme kao što je prikazano u nastavku kao 12:10 sati u 24 sata formatu.

Kodirati:

 Pod VBA_CDate2 () Dim Datum1 Kao Datum Datum1 = "12345" Dim Datum2 Kao Datum Datum2 = "12/3/45" Dim Datum3 Kao Datum Datum3 = "00:10:00" Kraj Sub 

Korak 8: Sada ćemo napokon još jednu varijablu Date4 proglasiti datumom.

Kodirati:

 Pod VBA_CDate2 () Dim Datum1 Kao Datum Datum1 = "12345" Dim Datum2 Kao Datum Datum2 = "12/3/45" Dim Datum3 Kao Datum Datum3 = "00:10:00" Dim Datum4 Kao Datum Kraj Sub 

Korak 9: I ovdje ćemo dati neku decimalnu vrijednost poput 0, 123 ili možete odabrati bilo koju vrijednost prema potrebi.

Kodirati:

 Pod VBA_CDate2 () Dim Datum1 Kao Datum Datum1 = "12345" Dim Datum2 Kao Datum Datum2 = "12/3/45" Dim Datum3 Kao Datum Datum3 = "00:10:00" Dim Datum4 Kao Datum Datum4 = "0.123" Kraj Sub 

Sada postoje dva načina da se vidi izlaz vrijednosti pohranjenih u različitim gore navedenim varijablama. MsgBox će nam omogućiti da vidimo sve vrijednosti istovremeno, ali pomoću Debug.print će nam omogućiti da vidimo sve varijable u jednom potezu.

Korak 10: Dakle, ovdje je bolje ako odaberemo Debug.Print kao što je prikazano u nastavku. I u istom retku dodijelite sve varijable počevši od datuma 1 do datuma 4.

Kodirati:

 Pod VBA_CDate2 () Dim Date1 As Date Date1 = "12345" Dim Date2 As Date Date2 = "12/3/45" Dim Date3 As Date Date3 = "00:10:00" Dim Date4 As Date Date4 = "0.123" Debug. Datum ispisa1, Datum2, Datum3, Datum4 Kraj Pod 

Korak 11: A da vidimo izlaz, upotrijebit ćemo neposredni prozor kao što je prikazano u nastavku. Da biste pristupili tome, idite na karticu izbornika Prikaži i odaberite Odmah prozor kao što je prikazano u nastavku.

12. korak: Sada pokrenite kôd pritiskom na tipku F5 ili klikom na gumb Play. Vidjet ćemo, datumski tip podataka dao nam je izlaz, ali nije u standardnom formatu podataka.

Korak 13: Da bismo izvadili standardne podatke, ovdje ćemo koristiti i CDate. Dakle, dodijelit ćemo CDate za svaki datum i vrijeme koje smo koristili za različite varijable kao što je prikazano u nastavku.

Kodirati:

 Sub VBA_CDate2 () Dim Date1 As Date Date1 = CDate ("12345") Dim Date2 As Date Date2 = CDate ("12/3/45") Dim Date3 As Date Date3 = CDate ("00:10:00") Dim Date4 As Date Date4 = CDate ("0.123") Debug.Print Date1, Date2, Date3, Date4 Kraj Sub 

14. korak: Sada pokrenite kôd pritiskom na tipku F5 ili klikom na gumb Reproduciraj.

Vidjet ćemo kako su ishodi i Date i CDate isti, ali postoji osnovna zajednička razlika između oba. A to je, CDate može pretvoriti bilo koju vrstu brojeva u standardni format datuma.

15. korak: Pokušajmo bilo koji tekst ili abecedu s CDateom i vidjeti što ćemo dobiti. Dakle, unijeli smo neki slučajni tekst kao abc u varijablu Date4 .

Kodirati:

 Sub VBA_CDate2 () Dim Date1 Kao Datum Date1 = CDate ("12345") Dim Date2 As Datum Date2 = CDate ("12/3/45") Dim Date3 As Date Date3 = CDate ("00:10:00") Dim Date4 Kao datum Date4 = CDate ("abc") Otklanjanje greškePrint Datum1, Datum2, Datum3, Datum4 Kraj Pod 

Korak 16: Sada ponovo pokrenite kod. Dobit ćemo okvir s porukom o pogrešci kao Tip Mismatch . To je zato što CDate ne može čitati i pretvarati tekst u standardni format datuma i vremena.

Prednosti i nedostaci funkcije Excel VBA CDate

  • Ovo može pretvoriti bilo koji datum ili vrijeme u standardni format prema potrebi.
  • VBA CDate bilo koji broj tumači kao vrijednost datuma i kasnije ga pretvara u standardni format.
  • Ne može interpretirati i pretvoriti tekst u oblik datuma.

Stvari koje treba zapamtiti

  • CDate može brojeve smatrati samo ulazom, ali taj broj može biti u bilo kojem formatu.
  • Tekst vrijednost se ne može pretvoriti.
  • Ako unesemo vrijeme ili datum koji je već u standardnom formatu, tada će opet vratiti istu vrijednost kao izlaz.
  • Date i CDate funkcioniraju na isti način. Dok CDate-om možemo pretvoriti i vrijeme i datum.

Preporučeni članci

Ovo je vodič za VBA CDate funkciju. Ovdje smo raspravljali o načinu korištenja CDate funkcije u Excelu pomoću VBA koda zajedno s praktičnim primjerima i download-ovim Excel predložakom. Možete i pregledati naše druge predložene članke -

  1. Format VBA datuma
  2. Excel DATEDIF funkcija
  3. VBA DateSerial
  4. Excel DATEDIF funkcija

Kategorija: