VBA teisendab stringi kuupäevaks

Lang L: none (table-of-contents)

See lühike õpetus näitab, kuidas VBA -s stringi kuupäevaks teisendada.

Kuupäevad Excelis salvestatakse numbriteks ja vormindatakse seejärel kuupäevaks. Esimene päev Exceli maailmas oli 1. jaanuar 1900 (Windowsi vaikeseade) või 1. jaanuar 1904 (Macintoshi vaikeseade) - see tähendab, et 5. august 2022 on 1. jaanuarist 1900 alates päev 44413. Stringi teisendamiseks Excelis kuupäevaks , peame kõigepealt stringi teisendama arvuks ja seejärel teisendama selle kuupäevaks.

CDate funktsioon

Stringi kuupäevaks teisendamiseks saame VBA -s kasutada funktsiooni CDate.

1234567 Alamkonverteerimise kuupäev ()Dim dte SingleHämarda stringinastrD = "05.10.2020"dte = CDate (strD)MsgBox dteEnd Sub

Kuna oleme deklareerinud numbrilise muutuja (dte kui üksik), tagastab sõnumikast numbri, mis viitab sisestatud kuupäevale.

Oluline on sisestada aasta, kasutades kõiki nelja aasta numbrit (st 2022 ja mitte ainult 20), vastasel juhul ei pruugi tagastatud arv olla ootuspärane. Excel ei tõlgenda kuupäeva aastaosa - seda juhib meie arvuti juhtpaneel.

Kui aga kuulutame muutujad kuupäevamuutujaks, tagastab sõnumikast kuupäevaks teisendatud numbri.

1234567 Alamkonverteerimise kuupäev ()Dim dte As DateHämarda stringinastrD = "05.10.2020"dte = CDate (strD)MsgBox dteEnd Sub

Võime selle sammu edasi teha ja vormindada kuupäeva selliseks kuupäevavorminguks, mida sooviksime näha.

1234567 Alamkonverteerimise kuupäev ()Dim dte nagu stringHämarda stringinastrD = "05.10.2020"dte = Vorming (CDate (strD), "dd mmmm yyyy")MsgBox dteEnd Sub

Selles näites teisendame stringi kuupäevaks ja seejärel uuesti stringiks!

Kui me aasta täielikult välja jätaksime, eeldab Excel jooksvat aastat.

wave wave wave wave wave