DateDiff Leírás
Két dátumérték közötti különbséget adja vissza a megadott intervallum alapján.
Egyszerű DateDiff példák
Íme egy egyszerű DateDiff példa:
123 | Sub DateDiff_Year ()MsgBox DateDiff ("éééé", #1/1/2019 #, #8/1/2021 #)End Sub |
Ez a kód visszaadja a 2. Ez a különbség az év során ("yyyy" jelzéssel) 2 nap között. (2021 - 2022 = 2)
A fenti példában a dátum1 és a dátum2 pozíciójának megváltoztatása.
123 | Sub DateDiff_Year ()MsgBox DateDiff ("yyyy", #20.01.2021 #, #1/1/2019 #)End Sub |
Ez a kód -2 -et ad vissza.
DateDiff szintaxis
A VBA szerkesztőben beírhatja a „DateDiff (”) parancsot a DateDiff függvény szintaxisának megtekintéséhez:
A DateDiff függvény 5 érvet tartalmaz:
Intervallum: Időegység (napok, hónapok, évek stb.). Írja be karakterláncként. (pl. „m” a hónapban)
Beállítás | Leírás |
---|---|
yyyy | Év |
q | Negyed |
m | Hónap |
y | Az év napja |
d | Nap |
w | Hétköznap |
ww | Hét |
h | Óra |
n | Perc |
s | Második |
Dátum1, Dátum2: Két dátum, amelyet használni szeretne a számításban.
FirstDayOfWeek: Állandó, amely a hét első napját határozza meg. Ez nem kötelező. Ha nincs megadva, akkor a vasárnapot kell feltételezni.
Állandó | Érték | Leírás |
---|---|---|
vbUseSystem | 0 | Használja az NLS API beállítást. |
vbVasárnap | 1 | Vasárnap (alapértelmezett) |
vbHétfő | 2 | hétfő |
vbKedd | 3 | kedd |
vbSzerda | 4 | szerda |
vbCsütörtök | 5 | csütörtök |
vbPéntek | 6 | péntek |
vbSombat | 7 | szombat |
FirstWeekOfYear: Állandó, amely meghatározza az év első hetét. Ez nem kötelező. Ha nincs megadva, akkor az első hét a január 1 -jének hete.
Állandó | Érték | Leírás |
---|---|---|
vbUseSystem | 0 | Használja az NLS API beállítást. |
vbElsőJan1 | 1 | Kezdje azzal a héttel, amelyen január 1. van (alapértelmezett). |
vbFirstFourDays | 2 | Kezdje azzal az első héttel, amelynek legalább négy napja van az új évben. |
vbFirstFullWeek | 3 | Kezdje az év első teljes hetével. |
VBA programozás | A kódgenerátor működik az Ön számára!
Példák az Excel VBA DateDiff függvényére
Dátumok hivatkozása
Kezdetben bemutatjuk a dátumok hivatkozásának különböző módjait a VBA DateDiff függvény használatával.
A DateDiff függvények mindegyike ugyanazt az eredményt eredményezi:
123456789 | Sub DateDiff_ReferenceDates ()MsgBox DateDiff ("m", 2019.04.04., #20.01.2021. #)MsgBox DateDiff ("m", DateSerial (2019, 4, 1), DateSerial (2021, 8, 1))MsgBox DateDiff ("m", DateValue ("2022. április 1."), DateValue ("2022. augusztus 1.")End Sub |
Vagy hivatkozhat a dátumokat tartalmazó cellákra:
12345 | Sub DateDiff_ReferenceDates_Cell ()MsgBox DateDiff ("m", tartomány ("C2"). Érték, tartomány ("C3"). Érték)End Sub |
Vagy hozzon létre és hivatkozzon dátumváltozókat:
123456789 | Sub DateDiff_Variable ()Dim dt1 dátumként, dt2 dátumkéntdt1 = #4/1/2019 #dt2 = #8/1/2021 #MsgBox DateDiff ("m", dt1, dt2)End Sub |
Unod már a VBA kódpéldák keresését? Próbálja ki az AutoMacro -t!
Különböző intervallum egységek használata
Szállás
123 | Sub DateDiff_Quarter ()MsgBox "a negyedek száma:" & DateDiff ("q", #1/1/2019 #, #1/1/2021 #)End Sub |
Hónapok
123 | Sub DateDiff_Month ()MsgBox "a hónapok száma:" & DateDiff ("m", #1/1/2019 #, #1/1/2021 #)End Sub |
Napok
123 | Sub DateDiff_Day ()MsgBox "a napok száma:" & DateDiff ("d", #1/1/2019 #, #1/1/2021 #)End Sub |
Hetek
123 | Sub DateDiff_Week ()MsgBox "a hetek száma:" & DateDiff ("w", #1/1/2019 #, #1/1/2021 #)End Sub |
Órák
123456789101112 | Sub DateDiff_Hour ()Dim dt1 dátumkéntDim dt2 dátumkéntDim nDiff As Longdt1 = #2019.08.14. 9:30:00 #dt2 = #2019.08.14. 13:00:00 #nDiff = DátumDiff ("h", dt1, dt2)MsgBox "órák:" & nDiffEnd Sub |
Percek
123 | Sub DateDiff_Minute ()MsgBox "perc:" & DateDiff ("n", 2019.08.14. 9:30:00 #, #8/14/2019 9:35:00 #)End Sub |
Másodpercek
123 | Sub DateDiff_Second ()MsgBox "szekció:" & DateDiff ("s", 2019.08.14. 9:30:10 #, #8/14/2019 9:30:22 AM #)End Sub |