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 |