Ovaj će vodič pokazati kako doći do današnjeg datuma u VBA.
Postoji nekoliko načina za dobivanje današnjeg datuma u VBA kodu, naime pomoću VBA Datum() funkciju ili VBA Sada() funkcije.
Funkcija Date ()
The Datum() funkcija omogućuje nam da dodijelimo današnji datum varijabli, a zatim prikažemo datum u neposrednom prozoru u VBE Editoru kako bismo vidjeli današnji datum.
123 | Zatamni dtDanas kao datumdtToday = Datum ()Debug.Print dtToday |
Alternativno, možemo prikazati datum u okviru za poruku.
12345 | Sub TestDateZatamni dtDanas kao datumdtToday = Datum ()Msgbox "Današnji datum je" & dtTodayKraj podm |
Funkcija Now ()
The Sada() Funkcija radi na isti način kao i funkcija datuma, ali uključuje vrijeme.
12345 | Sub TestDate ()Dim dtToday As DatedtToday = Sada ()MsgBox "Današnji datum je" & dtTodayKraj podm |
Oblikovanje datuma pomoću VBA
U oba Datum() i Sada() funkcije, datum je oblikovan u zadanom stilu kako je određeno postavkama na našem računalu. Ovo oblikovanje možemo prilagoditi pomoću VBA Format funkcija. Kako će funkcija oblikovanja vratiti niz, moramo deklarirati a NIZ varijabla, a ne a DATUM promjenjiva.
12345 | Sub TestDate ()Dim dtToday As StringdtToday = Format (Datum, "dd mmmm ggggg")MsgBox "Današnji datum je" & dtTodayKraj podm |
Također možemo formatirati Sada() koja uključuje vremenski dio u prilagođeni format.
12345 | PodformatNow ()Dim dtToday As StringdtToday = Format (Now (), "dd mmmm yy hh: mm: ss am/pm")MsgBox dtDanasKraj podm |
Usporedba 2 datuma s VBA
Također možemo upotrijebiti funkciju Datum za usporedbu današnjeg datuma s drugim datumom - možda bismo htjeli izračunati koliko dana ima do događaja! To možemo učiniti pomoću VBA DateDiff () funkcija koja će vratiti broj. Stoga možemo proglasiti anINTEGER varijabla za spremanje vraćene vrijednosti.
123456789 | Pod TestDateDiff ()Dim dtToday As DateZatamnite dtSomeDay kao datumZatamnite iDays As IntegerdtToday = DatumdtSomeDay = "05/06/2021"iDays = DateDiff ("d", dtToday, dtSomeDay)MsgBox "Postoje" & iDays & "dana između dva datuma"Kraj podm |
Budući da su datumi pohranjeni kao brojevi, mogli bismo umanjiti i drugi datum od prvog kako bismo dobili isti odgovor.
1 | iDays = dtToday - dtSomeDay |