VBA DateDiff -toiminto

DateDiff Kuvaus

Palauttaa kahden päivämääräarvon välisen eron määritetyn aikavälin perusteella.

Yksinkertaisia ​​DateDiff -esimerkkejä

Tässä on yksinkertainen DateDiff -esimerkki:

123 AlapäivämääräJälki_vuosi ()MsgBox DateDiff ("vvvv", #1/1/2019 #, #8/1/2021 #)End Sub

Tämä koodi palauttaa 2. Tämä on kahden päivän ero (vuosi (merkitty "yyyy")). (2021-2022 = 2)

Yllä olevassa esimerkissä päivämäärän1 ja päivämäärän2 sijainnin muuttaminen.

123 AlapäivämääräJälki_vuosi ()MsgBox DateDiff ("vvvv", #8.1.2021 #, #1.1.2019 #)End Sub

Tämä koodi palauttaa -2.

DateDiff -syntaksi

VBA -editorissa voit kirjoittaa "DateDiff (") nähdäksesi DateDiff -funktion syntaksin:

DateDiff -funktio sisältää 5 argumenttia:

Väli: Aikayksikkö (päivät, kuukaudet, vuodet jne.). Kirjoita merkkijonoksi. (esim. “m” kuukaudelle)

Asetus Kuvaus
yyyy Vuosi
q Neljännes
m Kuukausi
y Vuoden päivä
d Päivä
w Arkipäivä
ww Viikko
h Tunnin
n Minuutti
s Toinen

Päivämäärä1, päivämäärä2: Kaksi päivämäärää, jotka haluat käyttää laskennassa.

FirstDayOfWeek: Vakio, joka määrittää viikon ensimmäisen päivän. Tämä on valinnainen. Jos ei ole määritetty, oletetaan sunnuntai.

Jatkuva Arvo Kuvaus
vbUseSystem 0 Käytä NLS API -asetusta.
vbSunnuntai 1 Sunnuntai (oletus)
vbMaanantai 2 maanantai
vbTiistai 3 tiistai
vbKeskiviikko 4 keskiviikko
vbTorstai 5 torstai
vbPerjantai 6 perjantai
vb Lauantai 7 Lauantai

FirstWeekOfYear: Vakio, joka määrittää vuoden ensimmäisen viikon. Tämä on valinnainen. Jos sitä ei ole määritelty, ensimmäisen viikon oletetaan olevan viikko, jolla tammikuun 1.

Jatkuva Arvo Kuvaus
vbUseSystem 0 Käytä NLS API -asetusta.
vbEnsimmäinen tammikuu 1 1 Aloita viikolla, jolloin 1. tammikuuta tapahtuu (oletus).
vbFirstFourDays 2 Aloita ensimmäisellä viikolla, jolla on vähintään neljä uutta vuotta.
vbFirstFullWeek 3 Aloita vuoden ensimmäisellä viikolla.

VBA -ohjelmointi | Koodigeneraattori toimii sinulle!

Esimerkkejä Excel VBA DateDiff -toiminnosta

Viittauspäivämäärät

Aluksi esittelemme erilaisia ​​tapoja viitata päivämääriin käyttämällä VBA DateDiff -toimintoa.

Jokainen näistä DateDiff -funktioista tuottaa saman tuloksen:

123456789 Sub DateDiff_ReferenceDates ()MsgBox DateDiff ("m", #4.1.2019 #, #8/1/2021 #)MsgBox DateDiff ("m", DateSerial (2019, 4, 1), DateSerial (2021, 8, 1))MsgBox DateDiff ("m", DateValue ("1. huhtikuuta 2022"), DateValue ("1. elokuuta 2022"))End Sub

Tai voit viitata päivämääriä sisältäviin soluihin:

12345 Sub DateDiff_ReferenceDates_Cell ()MsgBox DateDiff ("m", alue ("C2"). Arvo, alue ("C3"). Arvo)End Sub

Tai luo ja viitepäivämäärän muuttujat:

123456789 AlapäivämääräDiff_Variable ()Dim dt1 päivämääränä, dt2 päivämääränädt1 = #4/1/2019 #dt2 = #8/1/2021 #MsgBox DateDiff ("m", dt1, dt2)End Sub

Oletko kyllästynyt etsimään esimerkkejä VBA -koodista? Kokeile AutoMacroa!

Eri väliyksiköiden käyttäminen

Neljännes

123 AlapäivämääräDiff_Quarter ()MsgBox "neljännesvuosien määrä:" & DateDiff ("q", #1/1/2019 #, #1/1/2021 #)End Sub

Kuukaudet

123 OsapäivämääräDiff_Month ()MsgBox "kuukausien lukumäärä:" & DateDiff ("m", #1/1/2019 #, #1/1/2021 #)End Sub

Päivää

123 AlapäivämääräDiff_Day ()MsgBox "päivien lukumäärä:" & DateDiff ("d", #1/1/2019 #, #1/1/2021 #)End Sub

Viikkoja

123 AlapäivämääräDiff_Week ()MsgBox "viikkojen määrä:" & DateDiff ("w", #1/1/2019 #, #1/1/2021 #)End Sub

Tunnit

123456789101112 OsapäivämääräDiff_Hour ()Dim dt1 PäivämääränäDim dt2 PäivämääränäDim nDiff niin kauandt1 = #8.4.2019 9.30:00 #dt2 = #8/14/2019 1:00:00 PM #nDiff = DateDiff ("h", dt1, dt2)MsgBox "tuntia:" & nDiffEnd Sub

Pöytäkirja

123 AlapäivämääräDiff_Minute ()MsgBox "minuutit:" & DateDiff ("n", #8.4.2019 9.30:00 #, #8.4.2019 9.35.00 #)End Sub

Sekuntia

123 Sub DateDiff_Second ()MsgBox "sek:" & DateDiff ("s", #8.4.2019 9:30:10 AM #, #8/14/2019 9:30:22 AM #)End Sub

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave