Deze tutorial laat zien hoe je de datum van vandaag in VBA kunt krijgen.
Er zijn een aantal manieren om de datum van vandaag in VBA-code te verkrijgen, namelijk met behulp van de VBA Datum() functie of de VBA Nutsvoorzieningen() functies.
Datum() functie
De Datum() functie stelt ons in staat om de datum van vandaag toe te wijzen aan een variabele en vervolgens de datum in het directe venster in de VBE-editor weer te geven om de datum van vandaag te zien.
123 | Dim dtVandaag als datumdtVandaag = Datum()Debug.Print dtToday |
Als alternatief kunnen we de datum in een berichtvenster weergeven.
12345 | SubtestdatumDim dtVandaag als datumdtVandaag = Datum()Msgbox "De datum van vandaag is " & dtTodayEinde sub |
Nu() Functie
De Nutsvoorzieningen() De functie werkt op dezelfde manier als de datumfunctie, maar bevat de tijd.
12345 | Subtestdatum()Dim dtVandaag als datumdtToday = Nu()MsgBox "De datum van vandaag is " & dtTodayEinde sub |
Datums opmaken met VBA
in zowel de Datum() en de Nutsvoorzieningen() functies, wordt de datum opgemaakt in een standaardstijl zoals bepaald door de instellingen op onze pc. We kunnen deze opmaak aanpassen met behulp van de VBA Formaat functie. Omdat de formaatfunctie een string teruggeeft, moeten we a . declareren SNAAR variabel in plaats van a DATUM variabel.
12345 | Subtestdatum()Dim dtToday As StringdtToday = Formaat (Datum, "dd mmmm jjjj")MsgBox "De datum van vandaag is " & dtTodayEinde sub |
We kunnen ook de nutsvoorzieningen() functie om het tijdsgedeelte in een aangepast formaat op te nemen.
12345 | SubformaatNu()Dim dtToday As StringdtToday = Format(Now(), "dd mmmm jj uu:mm:ss am/pm")MsgBox dtVandaagEinde sub |
2 datums vergelijken met VBA
We kunnen de datumfunctie ook gebruiken om de datum van vandaag te vergelijken met een andere datum - we willen misschien berekenen hoeveel dagen er nog zijn tot een evenement! We kunnen dit doen met behulp van de VBA DatumVerschil() functie die een getal teruggeeft. We kunnen daarom eenGEHEEL GETAL variabele om de geretourneerde waarde in op te slaan.
123456789 | Sub TestDateDiff()Dim dtVandaag als datumDim dtSomeDay As DateDim iDays als geheel getaldtToday = DatumdtSomeDay = "05/06/2021"iDays = DateDiff("d", dtToday, dtSomeDay)MsgBox "Er zijn " & iDays & " dagen tussen de 2 datums"Einde sub |
Omdat datums worden opgeslagen als getallen, kunnen we ook de tweede datum van de eerste aftrekken om hetzelfde antwoord te krijgen.
1 | iDays = dtToday - dtSomeDay |