Kuidas kasutada VBA DateAdd funktsiooni Excelis

  • Jaga Seda
Hugh West

The VBA DateAdd funktsioon on Exceli kuupäeva ja kellaaja kategooria all. VBA funktsioonid Selle funktsiooni abil saame lisada või lahutada antud kuupäevast aastaid, kuid, päevi, kvartaleid ja isegi erinevaid ajaperioode nagu tunnid, minutid, sekundid. Kuupäeva ja ajaga tegelemine igapäevastes arvutustes aruannete koostamiseks või võrdluste tegemiseks on tavaline stsenaarium. Excelis muudab VBA kuupäeva- ja ajafunktsioonide, nagu DateAdd funktsioon, kasutamine keerulisi või aeganõudvaid arvutusi.tõhusam ja kiirem.

Lae alla praktika töövihik

Lae alla see harjutusvihik, et seda artiklit lugedes harjutada.

VBA DateAdd funktsioon.xlsm

Sissejuhatus Exceli VBA DateAdd funktsioonile

Tulemus:

kuupäev, millele lisatakse või millest lahutatakse konkreetne ajavahemik

Süntaks:

DateAdd (intervall, number, kuupäev)

Argumendid:

Argument Kohustuslik/valikuline Kirjeldus
intervall Nõutav A string väljendus.

Ajavahemik erinevates seadetes, mida me tahame lisada number Nõutav A numbriline väljendus .

The number aadressilt intervallid lisatakse või lahutatakse

Võib olla positiivne - sest tulevane kuupäevad

Võib olla negatiivne - sest mineviku kuupäevad kuupäev Nõutav A kuupäev väljendus

The kuupäev millele intervallid on lisatud

Seadistused:

The DateAdd funktsioon on need intervalli seaded:

Seadistamine Kirjeldus
yyyy Aasta
q Kvartal
m Kuu
y Päeva aasta
d Päev
w Nädalapäevad
ww Nädal
h Tund
n Hetk
s Teine

Excel VBA DateAdd funktsiooni näited

Exceli funktsiooni DateAdd valemi väljendid

On erinevaid viise, kuidas panna kuupäev argument sisse DateAdd funktsioon. Kõik need annavad sama tulemuse.

Pange järgmine kood aastal Visual Basic Editor:

(Kuidas käivitada koodi Visual Basic'i redaktoris)

 Sub add_year() Range("D3") = DateAdd("yyyy", 2, #1/1/2022#) Range("D4") = DateAdd("yyyy", 2, DateSerial(2022, 1, 1)) Range("D5") = DateAdd("yyyy", 2, DateValue("1.1.2022")) Range("D6") = DateAdd("yyyy", 2, Range("B6")) End Sub 

Selgitus :

DateAdd("yyyy",2, üks järgmistest meetoditest)

Kuupäeva argumendi panemiseks võime kasutada erinevaid meetodeid:

  • #1/1/2011#
  • DateSerial( aasta , kuu, päev)
  • DateValue( kuupäev )
  • Range ("cell") - lahtrisse salvestatud kuupäev
  • Kuupäeva salvestamine muutujasse

Rakkudes D3, D4, D5, D6, D7 paneme ülaltoodud meetodid kui kuupäev argument DateAdd funktsiooni järjestikku ja sai sama tulemus.

Me lisasime 2 rohkem aastat aadressile 1/1/2022 mille tulemuseks oli 1/1/2024.

Siin,

yyyy kujutab endast aastat kui intervall

2 kujutab endast intervallide arvu kui number .

Abi: Kuidas käivitada koodi Visual Basici redaktoris

Järgige samme:

  • Alates Exceli lint , mine aadressile Arendaja vahekaart ja valige Visual Basic Tab.

  • Uues aknas klõpsake nuppu Sisesta vahekaart ja valige Moodul.

  • Kirjutage oma kood redaktoris ja vajutage F5 aadressile joosta.

Erinevate intervalliseadete lisamine Exceli funktsiooni DateAdd abil

1. Lisa aasta

Kood:

 Sub DateAdd_Years() Range("F5") = DateAdd("yyyy", 2, Range("D5")) End Sub 

Tulemus: 2 aastat lisatud 1/1/2022 (mm/dd/yyyy) ja tulemuseks oli 1/1/2024 (kk/kk/kk/aaaa).

Loe edasi: Kuidas kasutada aasta funktsiooni Excel VBAs

2. Lisa kvartal

Kood:

 Sub DateAdd_Quarters() Range ("F5") = DateAdd("q", 2, Range("D5")) End Sub 

Tulemus: 2 kvartalit = 6 kuud lisatud 1/1/2022 (mm/dd/yyyy) ja tulemuseks oli 7/1/2022 (kk/kk/kk/aaaa).

3. Lisa kuu

Kood:

 Sub DateAdd_Months() Range("F5") = DateAdd("m", 2, Range("D5")) End Sub 

Tulemus: 2 kuud lisatud 1/1/2022 (mm/dd/yyyy) ja tulemuseks oli 3/1/2022 (kk/kk/kk/aaaa).

Loe edasi: Kuidas kasutada Exceli VBA funktsiooni MONTH

4. Lisa aasta päev

Kood:

 Sub DateAdd_DayOfYear() Range("F5") = DateAdd("y", 2, Range("D5")) End Sub 

Tulemus : 2 Aasta päev lisatud aadressile 1/1/2022 (mm/dd/yyyy) ja tulemuseks oli 1/3/2022 (kk/kk/kk/aaaa).

Loe edasi: Kuidas kasutada päeva funktsiooni Excel VBAs

5. Lisa päev

Kood:

 Sub DateAdd_Day() Range("F5") = DateAdd("d", 2, Range("D5")) End Sub 

Tulemus : 2 päeva lisatud aadressile 1/1/2022 (mm/dd/yyyy) ja tulemuseks oli 1/3/2022 (kk/kk/kk/aaaa).

Sarnased lugemised

  • Exceli VBA nädala numbri leidmiseks (6 kiiret näidet)
  • Kuidas kasutada VBA DatePart-funktsiooni Excelis (7 näidet)
  • Kasutage VBA DateSerial funktsiooni Excelis (5 lihtsat rakendust)
  • Kuidas konverteerida kuupäeva stringist VBA abil (7 võimalust)

6. Lisa nädalapäev

Kood:

 Sub DateAdd_WeekDay() Range("F5") = DateAdd("w", 10, Range("D5")) End Sub 

Tulemus: lisatud 10 nädalapäeva aadressile 1/1/2022 (mm/dd/yyyy) ja tulemuseks oli 1/11/2022 (kk/kk/kk/aaaa).

7. Lisa nädal

Kood:

 Sub DateAdd_Weeks() Range("F5") = DateAdd("ww", 2, Range("D5")) End Sub 

Tulemus: 2 nädalat = 14 päeva lisatud aadressile 1/1/2022 (mm/dd/yyyy) ja tulemuseks oli 1/15/2022 (kk/kk/kk/aaaa).

Loe edasi: Kuidas saada nädalapäeva kasutades VBAd

8. Lisa tund

Kood:

 Sub DateAdd_Hours() Range("F5") = DateAdd("h", 14, Range("D5")) End Sub 

Tulemus: 14 tundi lisatud aadressile 1/1/2022 12:00 AM (mm/dd/yyyy: hh/mm) ja tulemuseks oli 1/1/2022 14:00 (mm//dd/yyyy : hh/mm).

9. Lisa minut

Kood:

 Sub DateAdd_Minutes() Range("F5") = DateAdd("n", 90, Range("D5")) End Sub 

Tulemus : 90 minutit = 1,30 tundi lisatud aadressile 1/1/2022 12:00 AM (mm/dd/yyyy) ja tulemuseks oli 1/1/2022 1:30 HOMMIKUL (kk/kk/kk/aaaa).

10. Lisa teine

Kood:

 Sub DateAdd_Seconds() Range("F5") = DateAdd("s", 120, Range("D5")) End Sub 

Tulemus: 120 sekundit = 2 minutit lisatud aadressile 1/1/2022 12:00 AM (mm/dd/yyyy : hh/mm) ja tulemuseks oli 1/1/2022 12:02 AM (mm//dd/yyyy : hh/mm).

DateAdd-funktsiooni kasutamine Excelis erinevate intervalliseadete lahutamiseks

Samamoodi võime me lahutatakse aastat, kuud, päeva, tundi, minutit jne. kuupäevast, kasutades selleks miinusmärk aadressil ees kohta number argument Näiteks:

Kood:

 Sub DateAdd_Subtract_Years() Range("F5") = DateAdd("y", -2, Range("D5")) End Sub 

Tulemus: 2 aastat lahutatakse 1/1/2022 (mm/dd/yyyy) ja tulemuseks oli 1/1/2020 (kk/kk/kk/aaaa).

Asjad, mida meeles pidada

  • Kui me kasutame 'w' lisada tööpäevadel see lisab kokku kõik nädalapäevad sealhulgas laupäev ja pühapäev, mitte ainult tööpäevad(keegi võib eeldada).
  • DateAdd funktsioon ei näita lõppkokkuvõttes välja kehtetu kuupäev Näiteks kui me lisame 1 kuu 31. jaanuarile 2022, siis on tulemuseks 28. veebruar 2022, mitte 31. veebruar 2022 (seda ei ole olemas).
  • Kui me lahutame rohkem kui 122 aastat nüüdsest an viga tekiks, sest Exceli kuupäev alustab aadressilt 1. jaanuar 1990.
  • DateAdd-funktsiooni tagastuskuupäev sõltub funktsioonist Juhtpaneel Kuupäeva seaded.
  • Me peaksime kuupäeva argument DateAdd funktsiooni vastavalt Kalender Kinnisvara Kui kalender on Gregoriuse , sisend da argumendiga peaks olema ka Gregoriuse Kui kalender on Hijri keeles, peab kuupäeva argument olema samas formaadis.

Kokkuvõte

Nüüd teame, kuidas kasutada VBA DateAdd funktsiooni Excelis. Loodetavasti julgustab see teid seda funktsiooni kindlamalt kasutama. Kui teil on küsimusi või ettepanekuid, ärge unustage neid allpool olevasse kommentaarikasti panna.

Hugh West on suurte kogemustega Exceli koolitaja ja analüütik, kellel on selles valdkonnas üle 10-aastane kogemus. Tal on raamatupidamise ja rahanduse bakalaureusekraad ning ärijuhtimise magistrikraad. Hugh’l on kirg õpetamise vastu ning ta on välja töötanud ainulaadse õpetamisviisi, mida on lihtne järgida ja mõista. Tema Exceli ekspertteadmised on aidanud tuhandetel õpilastel ja spetsialistidel üle maailma oma oskusi parandada ja karjääris silma paista. Oma ajaveebi kaudu jagab Hugh oma teadmisi maailmaga, pakkudes tasuta Exceli õpetusi ja veebikoolitusi, mis aitavad üksikisikutel ja ettevõtetel oma potentsiaali täielikult ära kasutada.