Excel VBA DateAdd

VBA DateAdd er en funksjon som utfører tillegg eller subtraksjon av tids- / datointervaller. Dette vil returnere dato ved å legge til eller trekke fra et spesifisert tidsintervall. Det er ganske vanskelig å takle dato og tid når du gjør noen beregninger på det. Men i det daglige arbeidet vårt er det en essensiell type data vi kan bruke. Sammenligning, tillegg, subtraksjon mellom forskjellige datoer er noen kjente operasjoner som vi gjør.

Formel for DateAdd-funksjon i Excel VBA

Formelen for VBA DateAdd-funksjon er veldig enkel i format.

La oss se hva som er parametrene som brukes i Excel VBA DateAdd-funksjonen.

  • Intervall: Dette kan være et tids- / datointervall du vil legge til eller trekke fra. Dette representerer hvilken type verdi du ønsker å legge til eller trekke fra. Dette kan være en komponent av dato eller tid som dager, måned osv. Omfanget av intervaller er gitt nedenfor.

  • Antall: Er antall intervaller du vil legge til. Bruk et positivt tall for å legge til intervallet med gitt dato og negativ verdi for å trekke intervallet fra datoen.
  • Dato : Datoen du vil legge til / trekke intervallet til. Operasjoner vil bli utført på denne dato og retur dato som output.

Eksempler på Excel VBA DateAdd-funksjon

Nedenfor er de forskjellige eksemplene på DateAdd-funksjon i Excel VBA:

Du kan laste ned denne VBA DateLegge til Excel-mal her - VBA DateLegge til Excel Mal

Eksempel 1 - Legg til dato

La oss se hvordan du legger til et bestemt nummer med den gitte datoen ved å bruke VBA DateAdd-funksjon.

  • Vi må finne datoen etter å ha lagt til '10' dager med datoen '25 / 10/2015 '
  • Start delprosedyren med et navn. Her opprettet vi en underprosedyre som heter 'adddate'.

Kode:

 Sub adddate () Slutt Sub 

  • Lag en variabel som datodatatype, variabelnavnet er gjeldende dato.

Kode:

 Sub adddate () Demp strømdato Som Dato slutt Sub 

  • Vi kommer til å lagre resultatet i denne variabelen gjeldende dato.
  • Vi ønsker å legge til '10' dager med '25 / 10/2015 '. Så antall dager som vil legge til er 10. Og intervallet er 'd' og tallet er 10.
  • Så la oss bruke VBA DateAdd-funksjonen som nedenfor.

Kode:

 Sub adddate () Dim aktuelle dato Som Date currentdate = DateAdd ("d", 10, "25/10/2015") Slutt Sub 

  • Etter å ha brukt formelen på variabelen, la oss bruke en meldingsboks for å skrive ut resultatet.

Kode:

 Sub adddate () Dim currentdate Som Date currentdate = DateAdd ("d", 10, "25/10/2015") MsgBox Format (currentdate, "dd-mm-yyyy") Slutt Sub 

  • Kjør koden ved å trykke på F5. Resultatet vises som

Du kan se resultatet som vist over.

Eksempel 2 - Legg til måneder

  • For å legge til måneder med den gitte datoen, må intervallet endres som "m".
  • Legg til '2' med datoen “15/2/2017”. Koden kan skrives som nedenfor.

Kode:

 Sub addmonth () Demp strømdato Som Dato aktuell dato = DatoLegg til ("m", 2, "15/2/2017") MsgBox-format (nåværende dato, "dd-mm-åååå") Slutt Sub 

  • Utdatoen vil bli endret som nedenfor.

Eksempel 3 - Legg til år

For å legge til år med den gitte datoen, kan koden nedenfor brukes.

  • Intervallet skal være "åååå"
  • Legg til 4 år med'20 / 2/2018 '

Kode:

 Sub addyear () Demp strømdato Som Dato aktuell dato = DatoLegg til ("åååå", 4, "20/2/2018") MsgBox-format (nåværende dato, "dd-mm-åååå") Slutt Sub 

  • Resultatet blir som nedenfor. Variabel strømdato vil returnere '20 / 2/2022 '

Eksempel 4 - Legg til kvartal

  • Når du legger til kvartal, vil tre måneder legges til datoen siden kvartalet hvis 12 måneder er 3.
  • Intervallet skal nevnes “Q”, tallet gitt i formelen spesifiserer hvor mange kvartaler som skal legges til. For eksempel er DateAdd (“Q”, 2, “22/5/2019”) antall kvartaler 2, så 6 måneder vil bli lagt til.
  • For å legge til 2 kvartaler med '22 / 5/2018 'nedenfor kan kode brukes.

Kode:

 Sub addquarter () Dim currentdate Som Date currentdate = DateAdd ("Q", 2, "22/5/2019") MsgBox Format (currentdate, "dd-mm-yyyy") Slutt Sub 

  • Resultatet blir som nedenfor.

Eksempel 5 - Legg til sekunder

  • Du kan legge til tid sammen med datoen som vises. For å få dette, nevn intervallet som “s” som indikerer sekunder.
  • For å vise fem sekunder med dato '28 / 3/2019 'kan du bruke formelen nedenfor.

Kode:

 Sub-tilleggssekunder () Demp strømdato Som Dato aktuell dato = DatoLegg til ("s", 5, "28/3/2019") MsgBox-format (nåværende dato, "dd-mm-åååå t: mm: ss") Slutt 

  • Mens utdataene vises med dato sekunder vil vises.

Eksempel 6 - Legg til uker

  • Hvis du vil legge til et antall uker med den gitte datoen, bruker du intervallet som "WW"
  • Kode for å finne datoen etter det gitte antall uker fra '27/03/2016'

Kode:

 Sub addweek () Demp strømdato Som Dato aktuell dato = DatoLegg til ("WW", 2, "27/3/2019") MsgBox-format (nåværende dato, "dd-mm-åååå") Slutt Sub 

  • Utgangen vil være datoen etter 2 uker.

Eksempel 7 - Legg til åpningstider

  • For å få en bestemt tid med en dato blir dette brukt.
  • I intervallet nevn “h” og endre også formatet på utdataene.
  • Koden for å få skrevet ut timene med en dato er.

Kode:

 Sub addhour () Demp strømdato Som Dato aktuell dato = DatoLegg til ("h", 12, "27/3/2019") MsgBox-format (nåværende dato, "dd-mm-åååå t: mm: ss") Slutt Sub 

  • Resultatet vises med tiden i tt: mm: ss.

Eksempel 8 - Hvordan trekke fra uker ved å bruke VBA DateAdd-funksjon?

I likhet med tillegg kan subtraksjon også utføres ved hjelp av VBA DateAdd-funksjonen. Tallene som er spesifisert som positive heltall sammen med formelen. For å utføre subtraksjon, bruk disse tallene som negative heltall. Endre for eksempel formelen som nedenfor.

 DateAdd (intervall, - nummer, dato) 

Ved å bruke metoden over vil prøve å finne dagen trekke fra tre uker fra '28 / 3/2019 '

  • Opprett en underprosess som underdate.

Kode:

 Sub subdate () Slutt Sub 

  • Definer en variabel for å lagre resultatet. Nåværende dato er en variabel som datatype for å tilordne det endelige resultatet.

Kode:

 Sub subdate () Dim currentdate As Date End Sub 

  • Å trekke fra tre uker fra '28 / 3/2019 'vil bruke formelen. DateAdd (“ww”, -3, “28/3/2019”)

Kode:

 Underdato () Demp strømdato Som Dato aktuell dato = DatoLegg til ("ww", -3, "28/3/2019") Slutt Sub 

'-3' indikerer at subtraksjon "ww" er intervallet siden vi ønsker å operere på uker.

  • Formelen brukes og resultatet lagres i gjeldende dato.

Kode:

 Underdato () Demp strømdato Som Dato aktuell dato = DatoLegg til ("ww", -3, "28/3/2019") MsgBox-format (nåværende dato, "dd-mm-åååå") Slutt Sub 

  • Resultatet etter å ha trukket fra tre uker fra gitt dato vises nedenfor.

Ting å huske

  • Intervallet og datoen nevnt i formelen vil bli gitt innen et dobbelt sitat.
  • Hvis du bruker hverdager intervall ”w” vil det fungere på samme måte som intervalldagen “d” siden ukedagen beregner 1 = søndag, 2 = mandag, etc. i Så det vil telle høytidene til og med du bruker hverdager.
  • Utgangen vises i henhold til datoformatinnstillingene på systemet ditt. Bruk format sammen med en meldingsboks for å skrive ut resultatet i det formatet du ønsker.
  • Innen VBA DateAdd-funksjonen bruker du tallet som negativt for å utføre subtraksjon mellom datoer.

Anbefalte artikler

Dette er en guide til Excel VBA DateAdd-funksjon. Her diskuterer vi eksemplene på VBA DateAdd-funksjon for å legge til og trekke fra dager, måneder og år fra den gitte datoen sammen med praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. Hvordan bruke datofunksjon i VBA?
  2. Datoformat i Excel VBA
  3. Hva er VBA-tid i Excel?
  4. Datoformel i Excel med eksempler

Kategori: