VBA DateDiff - Stap voor stap Voorbeeld om de DateDiff VBA Excel-functie te gebruiken

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.

In Excel kan het verschil tussen twee datums op veel manieren worden gevonden. U hebt geen speciale formule nodig om het verschil tussen twee datums te berekenen.

Kijk bijvoorbeeld 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 het probleem 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 in dagen, maanden, weken, kwartalen, etc. is… 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 het eens zijn met de volgende argumenten.

(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.

Voorbeeld # 1 - Om verschillen in dagen te vinden

Stel dat u twee datums heeft, "15-01-2018" en "15-01-2019". Laten we allerlei verschillen zoeken tussen 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 de Date1-variabele "15-01-2018" toe en voor de Date2-variabele, wijs "15-01-2019" toe.

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 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

Step 7: What is the first date to find the difference. Our first date is “15-01-2018” that we have already assigned to the variable “Date1”. So supply the variable name here.

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

Step 8: What is the second date to find the difference. The second date is “15-01-2019,” which holds the value through variable “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 the 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 one year, so we got 365 days as a 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 a look at the below homework for you. Find the difference between the below dates in “Months.”

Als je de weg niet hebt gevonden, staat hieronder de kant-en-klare code voor je.

Code:

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

U kunt deze code handmatig uitvoeren of op F5 drukken om het resultaat te zien.

Interessante artikelen...