VBA DateDiff függvény

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

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave