VBA DateAdd függvény

DateAdd Description

A VBA DateAdd funkciója lehetővé teszi napok, hónapok, évek, órák, negyedévek stb. Hozzáadását (vagy kivonását) a Dátumokhoz vagy az Időkhöz.

Egyszerű DateAdd példák

Íme egy egyszerű DateAdd példa:

123 Sub DateAdd_Day ()MsgBox DateAdd ("d", 20, #4/1/2021 #)End Sub

Ez a kód 20 napot ad hozzá („d” jelzéssel) a 2021.04.01 -i dátumhoz:

Ehelyett megváltoztathatjuk az Interval argumentumot „d” -ről „m” -ra, hogy 2021 hónapot adjunk hozzá a 2021.04.04 dátumhoz:

123 Sub DateAdd_Month ()MsgBox DateAdd ("m", 20, #4/1/2021 #)End Sub

Ahelyett, hogy a dátumot megjelenítenénk egy üzenetmezőben, hozzárendelhetjük azt egy változóhoz:

123456 Sub DateAdd_Day2 ()Dim dt dátumkéntdt = DateAdd ("d", 20, #4/1/2021 #)MsgBox dtEnd Sub

DateAdd Syntax

A VBA szerkesztőben beírhatja a „DateAdd (”) parancsot a DateAdd függvény szintaxisának megtekintéséhez:

A DateAdd függvény 3 é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

Szám: A hozzáadandó időegységek számát jelző számérték. (pl. 20 20 egység hozzáadásához)

Dátum: Kezdeti dátum. Lásd a következő részt.

VBA programozás | A kódgenerátor működik az Ön számára!

Példák az Excel VBA DateAdd függvényére

Dátumok hivatkozása

Kezdésként bemutatjuk a dátumok hivatkozásának különböző módjait a VBA DateAdd függvény használatával.

A DateAdd függvények mindegyike ugyanazt az eredményt eredményezi:

123456789 Sub DateAdd_ReferenceDates ()MsgBox DateAdd ("m", 2, #4/1/2021 #)MsgBox DateAdd ("m", 2, DateSerial (2021, 4, 1))MsgBox DateAdd ("m", 2, DateValue ("2022. április 1."))End Sub

Vagy hivatkozhat egy dátumot tartalmazó cellára:

12345 Sub DateAdd_ReferenceDates_Cell ()MsgBox DateAdd ("m", 2, tartomány ("C2"). Érték)End Sub

Vagy hozzon létre és hivatkozzon egy dátumváltozóra:

12345678 Sub DateAdd_Variable ()Dim dt dátumkéntdt = #4/1/2021 #MsgBox DateAdd ("m", 2, dt)End Sub

Dátumok hozzáadása vagy kivonása

Már bemutattuk, hogyan adhat hozzá dátumot:

123456 Sub DateAdd_Day2 ()Dim dt dátumkéntdt = DateAdd ("d", 20, #4/1/2021 #)MsgBox dtEnd Sub

A dátumokból kivonhat negatív számot (pl. -20 helyett 20):

123456 Sub DateAdd_Day ()Dim dt dátumkéntdt = DateAdd ("d", -20, #4/1/2021 #)MsgBox dtEnd Sub

Unod már a VBA kódpéldák keresését? Próbálja ki az AutoMacro -t!

Különböző időegységek hozzáadása

Évek

123 Sub DateAdd_Years ()MsgBox DateAdd ("éééé", 4, #4/1/2021 #)End Sub

Negyed

123 Sub DateAdd_Quarters ()MsgBox DateAdd ("q", 2, #4/1/2021 #)End Sub

Hónap

123 Sub DateAdd_Months ()MsgBox DateAdd ("m", 2, #4/1/2021 #)End Sub

Az év napja

123 Sub DateAdd_DaysofYear ()MsgBox DateAdd ("y", 2, #4/1/2021 #)End Sub

Nap

123 Sub DateAdd_Days3 ()MsgBox DateAdd ("d", 2, #4/1/2021 #)End Sub

Hétköznap

123 Sub DateAdd_Weekdays ()MsgBox DateAdd ("w", 2, #4/1/2021 #)End Sub

Hét

123 Sub DateAdd_Weeks ()MsgBox DateAdd ("ww", 2, #4/1/2021 #)End Sub

VBA programozás | A kódgenerátor működik az Ön számára!

Hozzáadás a mai naphoz

Ezek a példák időegységeket adnak a mai naphoz a Dátum függvény használatával.

123456789 Sub DateAdd_Year_Test ()Dim dtMa dátumkéntDim dtKésőbb dátumkéntdtToday = DátumdtLater = DateAdd ("yyyy", 1, dtToday)MsgBox "Egy évvel később" & dtLaterEnd Sub
123 Sub DateAdd_Quarter_Test ()Az MsgBox "2 negyedévvel később" & DateAdd ("q", 2, dátum)End Sub

Idő összeadása és kivonása

A DateAdd funkció a Times -nal is működik. Íme néhány példa idő hozzáadására (vagy kivonására) egy időhöz:

Óra

Ez a példa 2 órát ad hozzá egy alkalommal:

123 Sub DateAdd_Hour ()MsgBox DateAdd ("h", 2, #4/1/2021 6: 00: 00 #)End Sub

Perc

Ez a példa 120 percet von le az aktuális időből:

123 Sub DateAdd_Minute_Subtract ()MsgBox DateAdd ("n", -120, most)End Sub

Második

123 Sub DateAdd_Second ()MsgBox DateAdd ("s", 2, #4/1/2021 6: 00: 00 #)End Sub

Dátumok formázása

Amikor a dátumok (vagy időpontok) megjelennek az Excel, a UserForms vagy az Üzenetdobozokban, akkor a Formátum funkcióval meg kell adnia, hogyan kell megjeleníteni a dátumokat. Az alábbiakban néhány példát mutatunk be:

123456789101112131415161718 AlformázásDatesTimes ()'Visszaadja az aktuális dátumot és időtdt = Most ()'volt. 2021.07.02Tartomány ("B2") = Formátum (dt, "mm/dd/yyyy")'volt. 2022. július 2Tartomány ("B3") = Formátum (dt, "mmmm d, yyyy")'volt. 2022. július 2. 09:10Tartomány ("B4") = Formátum (dt, "mm/dd/yyyy hh: mm")'volt. 7.2.21 9:10Tartomány ("B5") = Formátum (dt, "h.n.yy h: mm AM/PM")End Sub

wave wave wave wave wave