Slik bruker du VBA DateAdd-funksjonen i Excel

  • Dele Denne
Hugh West

VBA DateAdd-funksjonen er under dato- og klokkeslettkategorien til Excels VBA-funksjoner . Ved å bruke denne funksjonen kan vi legge til eller trekke fra år, måneder, dager, kvartaler og til og med forskjellige tidsintervaller som timer, minutter, sekunder fra en gitt dato. Å håndtere dato og klokkeslett i daglige beregninger for å generere rapporter eller foreta sammenligninger er et vanlig scenario. I Excel gjør bruken av VBA dato- og klokkeslettfunksjoner som DateAdd-funksjonen komplekse eller tidkrevende beregninger mer effektive og raskere.

Last ned Practice Workbook

Last ned denne øvelsesarbeidsboken for å trene mens du leser denne artikkelen.

VBA DateAdd Function.xlsm

Introduksjon til Excel VBA DateAdd-funksjonen

Utfall:

en dato som et spesifikt tidsintervall legges til eller trekkes fra

Syntaks:

DateAdd (intervall, tall, dato)

Argumenter:

Argument Obligatorisk/Valgfri Beskrivelse
intervall Obligatorisk Et streng uttrykk.

Tidsintervallet i forskjellige innstillinger som vi ønsker å legge til nummer Obligatorisk Et numerisk uttrykk .

Antallet av intervaller som skal legges til eller trekkes fra

Kan være positiv – for fremtidige datoer

Kan være negative – for fortid datoer dato Obligatorisk Et dato uttrykk

datoen som intervallene er tillagt

Innstillinger:

DateAdd-funksjonen har disse intervallene innstillinger:

Innstilling Beskrivelse
åååå År
kv Kvartal
m Måned
y År for dagen
d Dag
w Ukedag
ww Uke
t Time
n Minutt
s Second

Eksempler på Excel VBA DateAdd-funksjonen

Formeluttrykk for Excel DateAdd-funksjonen

Det er forskjellige måter å sette datoen argument i DateAdd-funksjonen. De resulterer alle i samme utdata.

Sett inn følgende kode i Visual Basic Editor:

(Hvordan for å kjøre kode i Visual Basic Editor)

2375

Forklaring :

DateAdd(“åååå”,2, en av følgende metoder)

For å sette datoargumentet kan vi bruke forskjellige metoder:

  • #1/1/2011 #
  • DatoSerial( år , måned, dag)
  • DatoVerdi( dato )
  • Område (“celle”) – Dato lagret i en celle
  • Lagre datoen i envariabel

I cellene D3, D4, D5, D6, D7 legger vi metodene ovenfor som dato argumentet for DateAdd -funksjonen sekvensielt og fikk samme resultat.

Vi la til 2 flere år til 1/1/2022 som resulterte i 1/1/2024.

Her representerer

åååå år som intervall

2 representerer nei av intervaller som nummer .

Hjelp: Hvordan kjøre kode i Visual Basic Editor

Følg trinnene:

  • Fra Excel-båndet , gå til Utviklerfanen og velg Visual Basic -fanen.

  • Fra det nye vinduet klikker du på Sett inn -fanen og velger Modul.

  • Skriv koden i editoren og trykk F5 for å kjøre.

Legge til forskjellige intervallinnstillinger ved å bruke DateAdd-funksjonen i Excel

1. Legg til år

Kode:

6895

Resultat: 2 år lagt til 1/1 /2022 (mm/dd/åååå) og resulterte i 1/1/2024 (mm//dd/åååå).

Les mer: Slik bruker du årsfunksjonen i Excel VBA

2. Legg til kvartal

Kode:

9608

Resultat: 2 kvartal = 6 måneder lagt til 1/1/2022 (mm/dd/åååå) og resulterte i 7/1/2022 (mm//dd/åååå).

3. Legg til måned

Kode:

4523

Resultat: 2 måneder lagt til 1/1/2022 (mm/dd/åååå) og resulterte i 3/1/2022 (mm//dd/åååå).

Les mer: Slik bruker du Excel VBA MONTH-funksjonen

4. Legg til Day of Year

Kode:

2922

Resultat : 2 Day of Year lagt til til 1/1/2022 (mm/dd/åååå) og resulterte i 1/3/2022 (mm//dd/åååå).

Les mer: Slik bruker du dagfunksjonen i Excel VBA

5. Legg til dag

Kode:

2097

Resultat : 2 dager lagt til til 1/1 /2022 (mm/dd/åååå) og resulterte i 1/3/2022 (mm//dd/åååå).

Lignende avlesninger

  • Excel VBA for å finne ukenummer (6 raske eksempler)
  • Hvordan bruke VBA DatePart-funksjonen i Excel (7 eksempler)
  • Bruk VBA DateSerial-funksjonen i Excel (5 enkle applikasjoner)
  • Hvordan konvertere dato fra streng ved hjelp av VBA ( 7 måter)

6. Legg til ukedag

Kode:

5070

Resultat: 10 ukedager lagt til til 1/1 /2022 (mm/dd/åååå) og resulterte i 1/11/2022 (mm//dd/åååå).

7. Legg til uke

Kode:

3608

Resultat: 2 uker= 14 dager lagt til til 1/1/2022 (mm/dd/åååå) og resulterte i 15/1/2022 (mm//dd/åååå).

Les mer: Slik får du ukedagen ved å bruke VBA

8. Legg til time

Kode:

3531

Resultat: 14Timer lagt til til 1/1/2022 12:00 (mm/dd/åååå: tt/mm) og resulterte i 1/1/2022 14:00 (mm//dd/åååå : tt/mm).

9. Legg til minutt

Kode:

8840

Resultat : 90 minutter= 1,30 timer lagt til til 1/1/2022 12:00 (mm/dd/åååå) og resulterte i 1/1/2022 01:30 (mm//dd/åååå).

10. Legg til andre

Kode:

2173

Resultat: 120 sekunder = 2 minutter lagt til til 1/1/2022 12:00 AM (mm/dd/yyyy : hh/mm) og resulterte i 1/1/2022 12:02 AM (mm//dd/yyyy : hh /mm).

Bruk av DateAdd-funksjonen i Excel for å trekke fra  forskjellige intervallinnstillinger

På samme måte kan vi trekk år, måneder, dager, timer, minutter osv. fra en dato ved å bruke et minustegn foran foran for tallargumentet . For eksempel:

Kode:

3703

Resultat: 2 år trukket fra 1/1/2022 (mm/ dd/åååå) og resulterte i 1/1/2020 (mm//dd/åååå).

Ting å huske

  • Når vi bruker 'w' for å legge til ukedager samler det alle dagene i uken inkludert lørdag og søndag , ikke bare arbeidsdagene (noen kan forvente).
  • DateAdd-funksjonen ender ikke opp med å vise en ugyldig dato . Hvis vi for eksempel legger til 1 måned til 31. januar 2022, vil det resultere 28. februar 2022, ikke 31. februar 2022 (det finnes ikke).
  • Hvis vi trekker fra merenn 122 år fra nå vil en feil oppstå fordi Excel-datoen starter fra 1. januar 1990.
  • Returdatoen for DateAdd funksjonen avhenger av kontrollpanelets datoinnstillinger.
  • Vi bør datoargumentet til DateAdd-funksjonen i henhold til Kalenderegenskapen . Hvis kalenderen er gregoriansk , bør inndata da te-argumentet også være i gregoriansk . På samme måte, hvis kalenderen er i Hijri, må datoargumentet være i samme format.

Konklusjon

Nå vet vi hvordan vi bruker VBA DateAdd-funksjon i Excel. Forhåpentligvis vil det oppmuntre deg til å bruke denne funksjonaliteten mer selvsikkert. Eventuelle spørsmål eller forslag, ikke glem å sette dem i kommentarfeltet nedenfor

Hugh West er en svært erfaren Excel-trener og analytiker med over 10 års erfaring i bransjen. Han har en bachelorgrad i regnskap og finans og en mastergrad i bedriftsøkonomi. Hugh har en lidenskap for undervisning og har utviklet en unik undervisningstilnærming som er enkel å følge og forstå. Hans ekspertkunnskap om Excel har hjulpet tusenvis av studenter og fagfolk over hele verden med å forbedre sine ferdigheter og utmerke seg i karrieren. Gjennom bloggen sin deler Hugh sin kunnskap med verden, og tilbyr gratis Excel-opplæringer og nettbasert opplæring for å hjelpe enkeltpersoner og bedrifter å nå sitt fulle potensial.