Opis DateDiff
Vraća razliku između dvije vrijednosti datuma, na temelju navedenog intervala.
Jednostavni primjeri DateDiffa
Evo jednostavnog primjera DateDiff:
123 | Pod DatumDiff_Year ()MsgBox DateDiff ("gggg", #1/1/2019 #, #8/1/2021 #)Kraj podm |
Ovaj kôd će vratiti 2. To je razlika između dva dana u godini (označena sa "ggggg"). (2021. - 2022. = 2)
U gornjem primjeru mijenjanje položaja date1 i date2.
123 | Pod DatumDiff_Year ()MsgBox DateDiff ("gggg", #8/1/2021 #, #1/1/2019 #)Kraj podm |
Ovaj kôd će vratiti -2.
Sintaksa DateDiff
U VBA Editor -u možete upisati "DateDiff (" da biste vidjeli sintaksu za funkciju DateDiff:
Funkcija DateDiff sadrži 5 argumenata:
Interval: Vremenska jedinica (Dani, Mjeseci, Godine itd.). Unesite kao niz. (npr. "m" za mjesec)
Postavljanje | Opis |
---|---|
gggg | Godina |
q | Četvrtina |
m | Mjesec |
y | Dan u godini |
d | Dan |
w | Radni dan |
ww | Tjedan |
h | Sat |
n | Minuta |
s | Drugi |
Datum1, Datum2: Dva datuma koja želite koristiti u izračunu.
Prvi dan tjedna: Konstanta koja određuje prvi dan u tjednu. Ovo nije obavezno. Ako nije navedeno, pretpostavlja se nedjelja.
Konstantno | Vrijednost | Opis |
---|---|---|
vbUseSystem | 0 | Koristite postavku NLS API -ja. |
vbNedjela | 1 | Nedjelja (zadano) |
vbponedjeljak | 2 | ponedjeljak |
vbUtorak | 3 | utorak |
vbSrijeda | 4 | srijeda |
vbčetak | 5 | četvrtak |
vbPETAK | 6 | petak |
vbSubota | 7 | subota |
Prva sedmica godine: Konstanta koja određuje prvi tjedan u godini. Ovo nije obavezno. Ako nije navedeno, pretpostavlja se da je prvi tjedan tjedan u kojem se događa 1. siječnja.
Konstantno | Vrijednost | Opis |
---|---|---|
vbUseSystem | 0 | Koristite postavku NLS API -ja. |
vbFirstJan1 | 1 | Počnite s tjednom u kojem se javlja 1. siječnja (zadano). |
vbFirstFourDays | 2 | Počnite s prvim tjednom koji ima najmanje četiri dana u novoj godini. |
vbFirstFullWeek | 3 | Počnite s prvim punim tjednom u godini. |
VBA programiranje | Generator koda radi za vas!
Primjeri Excel VBA DateDiff funkcije
Referentni datumi
Za početak ćemo pokazati različite načine pozivanja na datume pomoću VBA DateDiff funkcije.
Svaka od ovih funkcija DateDiff proizvodi isti rezultat:
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. travnja 2022"), DateValue ("1. kolovoza 2022"))Kraj podm |
Ili se možete pozvati na ćelije koje sadrže datume:
12345 | Sub DateDiff_ReferenceDates_Cell ()MsgBox DateDiff ("m", raspon ("C2"). Vrijednost, raspon ("C3"). Vrijednost)Kraj podm |
Ili stvorite i referentne varijable datuma:
123456789 | Pod DateDiff_Variable ()Dim dt1 kao datum, dt2 kao datumdt1 = #4/1/2019 #dt2 = #8/1/2021 #MsgBox DateDiff ("m", dt1, dt2)Kraj podm |
Umorni ste od traženja primjera VBA koda? Isprobajte AutoMacro!
Korištenje različitih jedinica intervala
Četvrtine
123 | Sub DateDiff_Quarter ()MsgBox "broj tromjesečja:" & DateDiff ("q", #1/1/2019 #, #1/1/2021 #)Kraj podm |
Mjeseci
123 | Pod DatumDiff_Month ()MsgBox "broj mjeseci:" & DateDiff ("m", #1/1/2019 #, #1/1/2021 #)Kraj podm |
Dani
123 | Pod -datumDiff_Day ()MsgBox "broj dana:" & DateDiff ("d", #1/1/2019 #, #1/1/2021 #)Kraj podm |
Tjedni
123 | Sub DateDiff_Week ()MsgBox "broj tjedana:" & DateDiff ("w", #1/1/2019 #, #1/1/2021 #)Kraj podm |
Sati
123456789101112 | Sub DateDiff_Hour ()Dim dt1 kao datumDim dt2 kao datumDim nDiff As Longdt1 = #14.8.2019. 09:30:00 #dt2 = #14.8.2019. 13:00:00 #nDiff = DateDiff ("h", dt1, dt2)MsgBox "sati:" & nDiffKraj podm |
Zapisnici
123 | Sub DateDiff_Minute ()MsgBox "mins:" & DateDiff ("n", #8/14/2019 9:30:00 #, #8/14/2019 9:35:00 AM #)Kraj podm |
Sekunde
123 | Sub DateDiff_Second ()MsgBox "secs:" & DateDiff ("s", #8/14/2019 9:30:10 #, #8/14/2019 9:30:22 AM #)Kraj podm |