VBA DatePart

Excel VBA DatePart-funktion

DatePart i VBA används för att identifiera den del av datumet för det angivna datumet som ett argument, datumdelen kan vara antingen dagar eller månader eller år eller till och med timme minuter och sekunder, syntaxen för denna funktion klargör mycket själv och det är som följer, Datapart (intervall, datum som argument).

Syntax

Syntaxen för DatePart-funktionen ges nedan:

  • Intervall: De data som ska skickas i ett intervallargument är strängtyp vilket innebär att detta argument kan innehålla alla giltiga värden i det. Intervallet kan vara av år, månad, kvartal, dag, vecka, timme, minut, sekund.
  • Datum: Datumvärdet som behöver utvärderas.
  • firstdayofweek: Detta är en valfri parameter. Detta beskriver den första dagen i veckan, detta kan till och med ignoreras. Om denna parameter ignoreras tar detta automatiskt söndagen som den första dagen i veckan. Om du vill ändra det kan denna parameter användas. Detta argument kan bestå av vbUseSystem 0.

Använd NLS API-inställningen

vbSunday (standard), vbMonday, vbTuesday, vbWednesday, vbThursday vbFriday, vbSaturday.
  • firstweekofyear: Likaså toppparametern , detta är också en valfri parameter. Detta beskriver årets första vecka. Denna parameter kan också ignoreras. Om denna parameter ignoreras antar den att den 1 januari är årets första vecka. Om du vill ändra det kan denna parameter användas.

    Detta argument kan bestå av följande värden.

    vbUseSystem, vbFirstJan1, vbFirstFourDays, vbFirstFullWeek.

Efter att ha gett alla parametrar kommer Datepart () att returnera det numeriska värdet såsom heldatum eller år eller månad eller kvartal osv. Därför kommer returtypen för denna funktion att vara ett numeriskt värde.

Hur använder jag DatePart-funktionen i VBA?

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

Exempel nr 1

Det första exemplet är att visa hela datumet och kvartalet för den månaden också.

För att uppnå detta måste vi skriva lite kod i Visual Basic, för den Goto Developer-fliken och klicka sedan på Visual Basic så öppnas ett fönster.

I det fönstret skriver du koden enligt nedan.

Koda:

 Sub date_Datepart () Dim mydate As Variant mydate = # 12/25/2019 # MsgBox mydate MsgBox DatePart ("q", mydate) visar kvartal Slut Sub 

I det här exemplet har vi använt Datapart-funktionen för att visa datumet och en del av datumet som är en fjärdedel av datumet. Detta visar vilket kvartal av året som är det datum som kommer in.

Om vi ​​felsöker koden visas datumet som fullständigt datum första gången när koden kör “Msgbox mydate” eftersom det slumpmässiga datumet tilldelas variabeln “mydate”.

Därefter visar vi vilket kvartal av året det datumet kommer under.

När du kör koden manuellt eller använder snabbtangenten F5 visas datumet som visas efter att ha klickat på ok. Därefter visas kvartalet av datumet, detta kan visas i skärmdumpen nedan.

På samma sätt kan även kvartal, endast datum eller månad eller år visas.

Exempel 2

I det här exemplet anger jag datumet manuellt vid körningstiden.

Koda:

Sub date1_datePart () Dim TodayDate as Date 'Förklara variabler. Dim Msg TodayDate = InputBox ("Ange ett datum:") Msg = "Quarter:" & DatePart ("q", TodayDate) MsgBox Msg End Sub

Här i det här exemplet försöker vi få datumet manuellt vid körning. Koden "TodayDate = InputBox (" Ange ett datum: ")" denna rad anger att datumet kan anges manuellt,

Efter att ha angett datumet manuellt visar datumets kvartal i en meddelandefält. Detta kan visas i nedanstående skärmdump.

Eftersom juni månad är i andra kvartalet visar detta andra kvartalet som visas i ovanstående skärmdump.

Exempel # 3

I det här exemplet fylls alla värden i cellerna.

Koda:

 Privat underarbetsbok_Open () Dim DummyDate som datum DummyDate = ActiveSheet.Cells (2, 2) ActiveSheet.Cells (2, 2) .Value = Day (DummyDate) ActiveSheet.Cells (3, 2) .Value = Hour (DummyDate) ActiveSheet .Cells (4, 2) .Value = Minute (DummyDate) ActiveSheet.Cells (5, 2) .Value = Month (DummyDate) ActiveSheet.Cells (6, 2) .Value = Weekday (DummyDate) End Sub 

Datumen fylls i cellerna i excel-arket, för att koden skrivs som Active Sheet.cells. Med denna kod kan det datum som är närvarande vara årsmånad eller datum kan infogas i de givna cellerna.

Till exempel i ovanstående skärmdump,

Dagen ska införas i cellerna (2, 2) i excel-arket. Därför är koden skriven som "ActiveSheet.Cells (2, 2) .Value = Day (DummyDate)".

Kör koden med F5-tangenten eller manuellt så blir resultatet som visas nedan.

Det tar som standard dagens datum och det visas som 30 i (2,6) cell.

Likaså för alla andra data kan den också fyllas.

Användning av DatePart-funktion

  • DatePart-funktionen kan användas för att visa den del av datumet som namnet indikerar, dvs. om endast dag eller månad eller år av datumet måste visas kan denna funktion användas.
  • Denna funktion skiljer också datum, månad och ett år från ett visst datum.
  • Genom att använda denna funktion är datumet inte bara åtskilt, vi kan också få kvarter, dag, timme, minut och en sekund.

Saker att komma ihåg

  • Denna funktion kan endast användas som en VBA-funktion. I normal excel kan detta inte användas.
  • Datumen som ges som ett värde i denna funktion kan anges i vilket format som helst som mm-dd-åååå-format eller DD-MM-ÅÅÅÅ-format etc.
  • Denna funktion separerar alla värden separat, till exempel datum, månad, år eller tid också en timme, minut, sekunder också.
  • Detta är ordnat under Datum- och tidsfunktioner i VBA i Microsoft Excel.