DATEDIFF-funktion i VBA är en inbyggd funktion i VBA som också kategoriseras under datum- och tidsfunktion i VBA, den här funktionen används för att få skillnaden mellan två datum, den här funktionen tar tre argument det första argumentet är vilken del av skillnaden vi vill ha vilket kan vara år dagar eller månader eller sekunder och två datum och resultatet är ett heltal.

DATEDIFF-funktion i VBA
DATEDIFF-funktionen i VBA beräknar skillnaden mellan två datum i dagar, månader, kvartal och år.
I Excel är det många sätt att hitta skillnaden mellan två datum. Du behöver inte en speciell formel för att beräkna skillnaden mellan två datum.
Titta till exempel på bilden nedan.

Om vi vill beräkna skillnaden mellan dessa två datum kan vi helt enkelt subtrahera datum 1 från datum 2.

Det har gett oss skillnaden mellan två datum på ett antal dagar. Detta är problemet med denna generiska formel. Om vi behöver skillnaden i månader, år, kvartal osv … kan det inte ge.
I den här artikeln visar vi dig hur du använder den här DateDiff-funktionen i VBA.
Vad är DATEDIFF-funktionen i Excel VBA?
DATEDIFF i VBA står för "Datumskillnad mellan två datum."
Denna funktion kan ge oss antalet tidsintervall mellan två datum. När vi vill hitta skillnaden mellan två datum kan vi hitta den i dagar, veckor, månader, kvartal osv …
För att förstå funktionen, titta på nedanstående syntax för funktionen.

Intervall: Detta ingenting annat än på vilket sätt du vill beräkna datumskillnaden. Oavsett om det är i dagar, månader, veckor, kvartal etc. … Nedan är listan över detsamma.

Datum 1: Vilket är det första datumet du vill hitta skillnaden.
Datum 2: Vad är det andra datumet du vill hitta skillnaden från Datum 1. Datum 1: Vad är det första datumet du vill hitta skillnaden.
Här är formeln Datum 2 - Datum 1.
(Veckans första dag): Vad är den första dagen i veckan? Vi kan komma överens med följande argument.

(Årets första vecka): Vad är årets första vecka. Vi kan ange följande argument.

Exempel på DATEDIFF-funktion i Excel VBA
Följande är exempel på excel VBA DateDiff.
Exempel # 1 - Att hitta skillnader i dagar
Antag att du har två datum, “15-01-2018” och “15-01-2019”. Låt oss hitta alla typer av skillnader mellan dessa två datum.
Steg 1: Skapa först ett makronamn.
Koda:
Sub DateDiff_Example1 () Slut Sub
Steg 2: Definiera två variabler som datum.
Koda:
Sub DateDiff_Example1 () Dim Date1 Som Date Dim Date2 Som Date End Sub

Steg 3: Tilldela nu “15-01-2018” för variabeln Date1 och för variabeln Date2 tilldela “15-01-2019”.
Koda:
Sub DateDiff_Example1 () Dim Date1 Som Date Dim Date2 Som Date Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub

Steg 4: För att lagra resultat definierar du en enda variabel som Lång.
Koda:
Sub DateDiff_Example1 () Dim Date1 Som Date Dim Date2 Som Date Dim Resultat Som Long Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub

Steg 5: Tilldela nu värdet för denna variabel genom DATEDIFF-funktionen i VBA
Koda:
Sub DateDiff_Example1 () Dim Date1 Som Date Dim Date2 Som Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Resultat = DateDiff (End Sub

Steg 6: Det första argumentet är vilken typ av skillnad vi behöver mellan dessa två datum. Låt oss säga att vi måste hitta antalet dagar, så ange argumentet som "D."
Koda:
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.”

Om du inte har hittat vägen, nedan är den färdiga koden för dig.
Koda:
Underuppgift () Dim k Så länge för k = 2 till 8 celler (k, 3). Värde = DateDiff ("M", celler (k, 1), celler (k, 2)) Nästa k Avsluta sub

Du kan köra den här koden manuellt eller trycka på F5-tangenten för att se resultatet.
