VBA DateDiff-functie

DATEDIFF-functie in VBA is een ingebouwde functie in VBA die ook is gecategoriseerd onder de datum- en tijdfunctie in VBA, deze functie wordt gebruikt om het verschil tussen twee datums te krijgen, deze functie heeft drie argumenten, het eerste argument is welk deel van het verschil we willen dit kunnen jaardagen of maanden of seconden en twee datums zijn en het resultaat is een geheel getal.

DATEDIFF-functie in VBA

DATEDIFF-functie in VBA berekent het verschil tussen twee datums in dagen, maanden, kwartalen en jaren.

Bij Excel heeft het vinden van het verschil tussen twee datums vele manieren. U hebt geen speciale formule nodig om het verschil tussen twee datums te berekenen.

Kijk voor een voorbeeld naar de onderstaande afbeelding.

Als we het verschil tussen deze twee datums willen berekenen, kunnen we eenvoudig de datum 1 aftrekken van datum 2.

Het heeft ons het verschil gegeven tussen twee datums in een aantal dagen. Dit is wat het probleem is met deze generieke formule. Als we het verschil in maanden, jaren, kwartalen enz. Nodig hebben, kan het niet geven.

In dit artikel laten we u zien hoe u deze DateDiff-functie in VBA gebruikt.

Wat is de DATEDIFF-functie in Excel VBA?

DATEDIFF in VBA staat voor "Datumverschil tussen twee datums".

Deze functie kan ons het nummer van het tijdsinterval tussen twee datums geven. Als we het verschil tussen twee datums willen vinden, kunnen we het vinden in dagen, weken, maanden, kwartalen, enz.

Bekijk de onderstaande syntaxis van de functie om de functie te begrijpen.

Interval: Dit is niets anders dan op welke manier u het datumverschil wilt berekenen. Of het nu gaat om dagen, maanden, weken, kwartalen, enz… Hieronder staat de lijst van hetzelfde.

Datum 1: Wat is de eerste datum waarop u het verschil wilt vinden.

Datum 2: Wat is de tweede datum waarop u het verschil wilt vinden met Datum 1. Datum 1: Wat is de eerste datum waarop u het verschil wilt vinden.

Hier is de formule Datum 2 - Datum 1.

[Eerste dag van de week]: Wat is de eerste dag van de week? We kunnen argumenten volgen.

[Eerste week van het jaar]: Wat is de eerste week van het jaar. We kunnen de volgende argumenten invoeren.

Voorbeelden van DATEDIFF-functie in Excel VBA

De volgende zijn de voorbeelden van Excel VBA DateDiff.

U kunt deze VBA DateDiff-functiesjabloon hier downloaden - VBA DateDiff-functiesjabloon

Voorbeeld # 1 - Om verschillen in dagen te vinden

Stel dat je twee data hebt "15-01-2018" en "15-01-2019". Laten we allerlei verschillen zoeken voor deze twee datums.

Stap 1: Maak eerst een macronaam.

Code:

 Sub DateDiff_Example1 () End Sub 

Stap 2: definieer twee variabelen als datum.

Code:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date End Sub 

Stap 3: Wijs nu voor Datum1 variabele “15-01-2018” toe en voor Datum2 variabele “15-01-2019”.

Code:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub 

Stap 4: Om de resultaten op te slaan, definieert u nog een variabele als Long.

Code:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub 

Stap 5: Wijs nu de waarde voor deze variabele toe via de DATEDIFF-functie in VBA

Code:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff (End Sub 

Stap 6: Het eerste argument is wat voor soort verschil we nodig hebben tussen deze twee datums. Stel dat we het aantal dagen moeten vinden, dus geef het argument op als "D".

Code:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", End Sub 

Stap 7: Wat is de eerste datum om het verschil te vinden? Onze eerste datum is “15-01-2018” die we al hebben toegewezen aan de variabele “Datum1”. Geef hier dus de variabelenaam op.

Code:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", Date1, End Sub 

Stap 8: Wat is de tweede datum om het verschil te vinden. De tweede datum is "15-01-2019" die de waarde bevat via variabele "Date2".

Code:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", Date1, Date2) End Sub 

Step 9: Ignore the last two parameters. Now assign the value of variable “Result” through the VBA message box.

Code:

 Sub DateDiff_Example1() Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff("D", Date1, Date2) MsgBox Result End Sub 

Now run the code using F5 key or manually, we will get the difference between these two dates in a number of days.

So, from “15-01-2018” to 15-01-2019” the exact difference is 1 year, so we got 365 days as the result.

Like this, we can find the difference between two dates in time intervals.

Example #2 – To Find Difference in Months

Code:

 Sub DateDiff_Example2() Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff("M", Date1, Date2) MsgBox Result End Sub 

 

Run this code Using the F5 key or you can run manually to show the result as given below.

Example #3 – To Find Difference in Years

Code:

 Sub DateDiff_Example3() Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff("YYYY", Date1, Date2) MsgBox Result End Sub 

Run this code using the F5 key or manually to see the result.

Assignment as a Practice

I hope you have understood the function of VBA DATEDIFF. Take look at the below homework for you. Find the difference between the below dates in “Months”.

If you have not found the way below is the readymade code for you.

Code:

 Sub Assignment() Dim k As Long For k = 2 To 8 Cells(k, 3).Value = DateDiff("M", Cells(k, 1), Cells(k, 2)) Next k End Sub 

You can run this code manually or press the F5 key to see the result.