Vi har allerede gått gjennom hva variabler, datatyper og konstanter er i vår VBA -datatyper - variabler og konstanter. I denne opplæringen skal vi dekke hvordan du deklarerer en variabel som en dato.
I VBA lagres datatypen som desimal. Både datoer og klokkeslett kan lagres i denne datatypen. Datatypen VBA -dato kan lagre verdier fra 1. januar 100 - 31. desember 9999.
VBA -datovariabel
Du deklarerer en variabel som en dato ved å bruke Dim -søkeordet:
1 | Dim dateOne as Date |
Deretter kan du tilordne en dato til datavariabelen. Det er flere måter å generere datoer for tildeling av variabler:
Tilordne variabel i dag
Datofunksjonen vil returnere dagens dato:
123 | Dim dtI dagdtToday = Dato |
Tilordne nå til variabel
Nå -funksjonen vil returnere dagens dato og nåværende tid:
123 | Dim dNådNow = Nå |
Tildel tid til variabel
Tidsfunksjonen returnerer gjeldende tid:
123 | Dim tTimetTime = Tid |
Tilordne en dato til variabel med DateSerial
DateSerial -funksjonen vil returnere en dato basert på inndataår, måned og dag:
123 | Dim dsDatodsDate = DateSerial (2010, 11, 11) |
Tildel en tid til variabel med TimeSerial
TimeSerial -funksjonen returnerer en tid, basert på en inndatatime, minutt og sekund:
123 | Dim tsTimetsTime = TimeSerial (10, 10, 45) |
Du må legge inn datoer med # eller ”når du bruker dem i koden din, som vist nedenfor:
VBA DateValue -funksjon
VBA DateValue -funksjonen kan brukes til å initialisere en dato. Følgende kode kan brukes til å initialisere en dato i VBA:
1 | MsgBox DateValue ("1/1/2010") |
VBA TimeValue -funksjon
1 | MsgBox TimeValue ("21:30:57") |
Eksempel på datavariabel i Excel VBA
Denne fremgangsmåten viser hvordan du oppretter datovariabler, tilordner dem verdier og sender dem ut i et Excel -regneark:
12345678910111213 | Sub DeclaringAVariableAsADate ()Dim dateOne As DateDim dateTwo As DatedateOne = #1/1/2019 #dateTwo = "1/2/2019"Område ("A1"). Verdi = dateOneOmråde ("A2"). Verdi = dateTwoSlutt Sub |
Resultatet er:
Du kan lære mer om datofunksjoner i denne opplæringen.
VBA -datavariabel i tilgang
Datovariabelen fungerer nøyaktig det samme i Access VBA som i Excel VBA.
Denne fremgangsmåten viser hvordan du oppretter en datavariabel og oppdaterer et felt i en tilgangstabell med verdien.
12345 | Sub DeclaringAVariableAsADate ()Dim dtWork As DatedtWork = #05/10/2020 #DoCmd.RunSql "UPDATE tblJobs SET WorkDate = #" & dtWork & " # WHERE JobNo = 6"Slutt Sub |