Excel VBA DateAdd

VBA DateAdd är en funktion som utför tillägg eller subtraktion av tids- / datumintervall. Detta kommer att returnera datumet genom att lägga till eller subtrahera ett specificerat tidsintervall. Det är ganska svårt att hantera datum och tid när du gör några beräkningar på det. Men i vårt dagliga arbete är det en viktig typ av data som vi kan använda. Jämförelse, tillägg, subtraktion mellan olika datum är några bekanta operationer som vi gör.

Formel för DateAdd-funktion i Excel VBA

Formeln för VBA DateAdd-funktion är mycket enkel i format.

Låt oss se vilka parametrar som används i Excel VBA DateAdd-funktionen.

  • Intervall: Detta kan vara ett tids- / datumintervall som du vill lägga till eller subtrahera. Detta representerar vilken typ av värde du vill lägga till eller subtrahera. Detta kan vara en del av datum eller tid som dagar, månad osv. Omfånget för intervall anges nedan.

  • Antal: Är antalet intervall du vill lägga till. Använd ett positivt tal för att lägga till intervallet med det givna datumet och det negativa värdet för att subtrahera intervallet från datumet.
  • Datum : Datumet till vilket du vill lägga till / subtrahera intervallet. Åtgärderna kommer att utföras på detta datum och returdatum som utgång.

Exempel på Excel VBA DateAdd-funktion

Nedan följer de olika exemplen på DateAdd-funktion i Excel VBA:

Du kan ladda ner denna VBA DateAdd Excel-mall här - VBA DateAdd Excel-mall

Exempel 1 - Lägg till datum

Låt oss se hur du lägger till ett visst nummer med det givna datumet med VBA DateAdd-funktion.

  • Vi måste hitta datumet efter att ha lagt till '10' dagar med datumet '25 / 10/2015 '
  • Starta delproceduren med ett namn. Här skapade vi en subprocedur med namnet 'adddate'.

Koda:

 Sub adddate () Slut Sub 

  • Skapa en variabel som datumdatatype, variabelns namn är aktuellt datum.

Koda:

 Sub adddate () Dim currentdate As Date End Sub 

  • Vi kommer att lagra resultatet i denna variabla strömdatum.
  • Vi vill lägga till '10' dagar med '25 / 10/2015 '. Så antalet dagar som vill lägga till är 10. Och intervallet är 'd' och antalet är 10.
  • Så låt oss använda VBA DateAdd-funktionen enligt nedan.

Koda:

 Sub adddate () Dim currentdate Som Date currentdate = DateAdd ("d", 10, "25/10/2015") End Sub 

  • Efter att ha använt formeln på variabeln, låt oss använda en meddelanderuta för att skriva ut resultatet.

Koda:

 Sub adddate () Dim currentdate Som Date currentdate = DateAdd ("d", 10, "25/10/2015") MsgBox Format (currentdate, "dd-mm-åååå") Slut Sub 

  • Kör koden genom att trycka på F5. Resultatet kommer att visas som

Du kan se resultatet som visas ovan.

Exempel 2 - Lägg till månader

  • För att lägga till månader med det givna datumet måste intervallet ändras som "m".
  • Lägg till '2' med datumet "15/2/2017". Koden kan skrivas enligt nedan.

Koda:

 Sub addmonth () Dim currentdate Som Date currentdate = DateAdd ("m", 2, "15/2/2017") MsgBox Format (currentdate, "dd-mm-yyyy") Slut Sub 

  • Outputdatumet kommer att ändras enligt nedan.

Exempel 3 - Lägg till år

För att lägga till år med det angivna datumet kan koden nedan användas.

  • Intervallet ska vara ”åååå”
  • Lägg till 4 år med'20 / 2/2018 '

Koda:

 Sub addyear () Dim currentdate Som Date currentdate = DateAdd ("yyyy", 4, "20/2/2018") MsgBox Format (currentdate, "dd-mm-yyyy") Slut Sub 

  • Resultatet blir som nedan. Variabelströmdatum kommer att returnera '20 / 2/2022 '

Exempel 4 - Lägg till kvartal

  • När man lägger till kvartal kommer tre månader att läggas till datumet sedan kvartalet om 12 månader är 3.
  • Intervallet ska nämnas som "Q", numret som anges i formeln anger hur många kvartal som ska läggas till. Till exempel DateAdd ("Q", 2, "22/5/2019") Antal kvartal är 2 så 6 månader kommer att läggas till.
  • För att lägga till två kvartal med '22 / 5/2018 'nedan kan kod användas.

Koda:

 Sub addquarter () Dim currentdate Som Date currentdate = DateAdd ("Q", 2, "22/5/2019") MsgBox Format (currentdate, "dd-mm-yyyy") Slut Sub 

  • Resultatet blir som nedan.

Exempel 5 - Lägg till sekunder

  • Du kan lägga till tid tillsammans med datumet visas. För att få detta nämner intervallet som “s” som indikerar sekunder.
  • För att visa fem sekunder med datum '28 / 3/2019 'kan du använda formeln nedan.

Koda:

 Sub-tilläggsekunder () Dim currentdate Som Date currentdate = DateAdd ("s", 5, "28/3/2019") MsgBox Format (currentdate, "dd-mm-åååå hh: mm: ss") 

  • Samtidigt som utgången visas med datumsekunder visas.

Exempel 6 - Lägg till veckor

  • För att lägga till ett antal veckor med det givna datumet, använd intervallet som "WW"
  • Kod för att hitta datumet efter det givna antalet veckor från '27 / 03/2016 '

Koda:

 Sub addweek () Dim currentdate Som Date currentdate = DateAdd ("WW", 2, "27/3/2019") MsgBox Format (currentdate, "dd-mm-yyyy") Slut Sub 

  • Output kommer att vara datumet efter 2 veckor.

Exempel 7 - Lägg till öppettider

  • För att få en viss tid med ett datum används detta.
  • I intervall nämna "h" och ändra också formatet på utgången.
  • Koden för att skriva ut timmarna med ett datum är.

Koda:

 Sub addhour () Dim currentdate Som Date currentdate = DateAdd ("h", 12, "27/3/2019") MsgBox Format (currentdate, "dd-mm-yyyy hh: mm: ss") Slut Sub 

  • Resultatet visas med tiden i hh: mm: ss.

Exempel 8 - Hur subtraherar veckor med VBA DateAdd-funktion?

På liknande sätt som tillägg kan subtraktion också utföras med VBA DateAdd-funktion. Siffrorna som anges som positiva heltal tillsammans med formeln. För att utföra subtraktion använder du dessa siffror som negativa heltal. Ändra till exempel formeln enligt nedan.

 DateAdd (intervall, - nummer, datum) 

Genom att använda metoden ovan kommer du att försöka hitta dagen subtrahera tre veckor från '28 / 3/2019 '

  • Skapa en delprocedur som underdatum.

Koda:

 Sub subdate () Slut Sub 

  • Definiera en variabel för att lagra resultatet. Aktuellt datum är en variabel som datumtyp för att tilldela det slutliga resultatet.

Koda:

 Sub subdate () Dim currentdate As Date End Sub 

  • För att subtrahera tre veckor från '28 / 3/2019 'kommer formeln att användas. DateAdd (“ww”, -3, “28/3/2019”)

Koda:

 Sub subdate () Dim currentdate Som Date currentdate = DateAdd ("ww", -3, "28/3/2019") End Sub 

'-3' indikerar att subtraktionen "ww" är intervallet eftersom vi vill arbeta på veckor.

  • Formeln tillämpas och resultatet lagras i aktuellt datum.

Koda:

 Sub subdate () Dim currentdate Som Date currentdate = DateAdd ("ww", -3, "28/3/2019") MsgBox Format (currentdate, "dd-mm-yyyy") Slut Sub 

  • Resultatet efter subtraktion tre veckor från det givna datumet visas nedan.

Saker att komma ihåg

  • Intervallet och datumet som anges i formeln kommer att anges inom ett dubbelcitationstecken.
  • Om du använder veckodagintervall ”w” fungerar det på samma sätt som intervalldagen ”d” eftersom veckodagen beräknar 1 = söndag, 2 = måndag, etc. i Så det räknar helgdagarna även om du använder vardagar.
  • Utmatningen visas enligt datumformatinställningarna på ditt system. Använd format tillsammans med en meddelanderuta för att skriva ut resultatet i det format du vill ha.
  • Inom VBA DateAdd-funktionen använder du siffran som negativ för att utföra subtraktion mellan datum.

Rekommenderade artiklar

Detta är en guide till Excel VBA DateAdd-funktion. Här diskuterar vi exemplen på VBA DateAdd-funktion för att lägga till och subtrahera dagar, månader och år från det givna datumet tillsammans med praktiska exempel och nedladdningsbar Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -

  1. Hur använder man datumfunktionen i VBA?
  2. Datumformat i Excel VBA
  3. Vad är VBA-tid i Excel?
  4. Datumformel i Excel med exempel

Kategori: