VBA -datumfunktioner

Innehållsförteckning

I denna handledning kommer vi att gå igenom de olika inbyggda VBA-datumfunktionerna.

VBA -datumfunktion

Du kan använda datumfunktionen för att returnera aktuellt datum.

Syntaxen för datumfunktionen är Date (). Det har inga argument.

Följande kod visar hur du använder datumfunktionen:

12345678 Sub UsingTheDateFunction ()Dim theDate As DatetheDate = Date ()Felsök. Skriv ut datumetAvsluta Sub

Resultatet är:

VBA Now -funktion

Du kan använda Nu -funktionen för att återställa aktuellt datum och tid.

Syntaxen för Nu -funktionen är Nu (). Det har inga argument.

Följande kod visar hur du använder nu -funktionen:

12345678 Sub UsingTheNowFunction ()Dim theDate As DatetheDate = Now ()Felsök. Skriv ut datumetAvsluta Sub

Resultatet är:

VBA -tidsfunktion

Du kan använda tidsfunktionen för att återställa aktuell tid.

Syntaxen för tidsfunktionen är Time (). Det har inga argument.

Följande kod visar hur du använder tidsfunktionen:

12345678 Sub UsingTheTimeFunction ()Dim tid som datumtheTime = Time ()Felsök. Skriv ut tidenAvsluta Sub

Resultatet är:

VBA DateAdd -funktion

Du kan använda funktionen DateAdd för att lägga till ett datum/tidsintervall till ett datum eller en tid, och funktionen returnerar det resulterande datumet/tiden.

Syntaxen för DateAdd -funktionen är:

DateAdd (Intervall, Antal, Datum) där:

  • Intervall - En sträng som anger vilken typ av intervall som ska användas. Intervallet kan vara ett av följande värden:

"D-dagen
"Ww" - vecka
"W" - vardag
"M" - månad
“Q” - kvartal
"Åååå" - år
“Y” - årets dag
"H" - timme
"N" - minut
“S” - andra

  • Antal - Antalet intervall som du vill lägga till det ursprungliga datumet/tiden.
  • Datum - Det ursprungliga datumet/tiden.

Obs! När du använder datum i din kod måste du omge dem med # eller citattecken.

Följande kod visar hur du använder funktionen DateAdd:

123456789 Sub UsingTheDateAddFunction ()Dim senare Datum som datumlaterDate = DateAdd ("m", 10, "11/12/2019")Debug.Print laterDateAvsluta Sub

Resultatet är:

VBA DateDiff -funktion

Du kan använda DateDiff -funktionen för att få skillnaden mellan två datum, baserat på ett visst tidsintervall.

Syntaxen för DateDiff -funktionen är:

DateDiff (Intervall, Date1, Date2, [Firstdayofweek], [Firstweekofyear]) där:

  • Intervall - En sträng som anger vilken typ av intervall som ska användas. Intervallet kan vara ett av följande värden:

"D-dagen
"Ww" - vecka
"W" - vardag
"M" - månad
“Q” - kvartal
"Åååå" - år
“Y” - årets dag
"H" - timme
"N" - minut
“S” - andra

  • Date1 - Ett datumvärde som representerar det tidigare datumet.
  • Date2 - Ett datumvärde som representerar det senare datumet.
  • Första dagen i veckan (Frivillig) - En konstant som anger den vardag som funktionen ska använda som den första dagen i veckan. Om blank söndag används som första dagen i veckan. Firstdayofweek kan vara ett av följande värden:

-vbSunday - använder söndag som första dag i veckan.
-vbMåndag - använder måndag som första dag i veckan.
-vbTuesday - använder tisdag som den första dagen i veckan.
-vbWednesday - använder onsdagen som den första dagen i veckan.
-vbThursday - använder torsdagen som den första dagen i veckan.
-vbFriday - använder fredagen som den första dagen i veckan.
-vbSaturday - använder lördagen som den första dagen i veckan.
-vbUseSystemDayOfTheWeek - använder den första dagen i veckan som anges av systemets inställningar.

  • Första veckan i år (Frivillig) - En konstant som anger årets första vecka. Om den är tom används den 1 januari veckan som årets första vecka. Firstweekofyear kan vara ett av följande värden:

-vbFirstJan1 - använder veckan som innehåller 1 januari.
-vbFirstFourDays - använder den första veckan som innehåller minst fyra dagar under det nya året.
-vbFirstFullWeek - använder årets första hela vecka.
-vbSystem - använder årets första vecka enligt dina systeminställningar.

Följande kod visar hur du använder DateDiff -funktionen:

123456789 Sub UsingTheDateDiffFunction ()Dim theDifferenceBetweenTwoDates As LongtheDifferenceBetweenTwoDates = DateDiff ("q", "11/11/2010", "10/12/2012")Felsök. Skriv ut theDifferenceBetweenTwoDatesAvsluta Sub

Resultatet är:

VBA DatePart -funktion

Du kan använda DatePart -funktionen för att returnera en del (dag, vecka, kvartal, månad etc.) av ett visst datum.

Syntaxen för DatePart -funktionen är:

DatePart (Intervall, Datum, [Firstdayofweek], [Firstweekofyear]) där:

  • Intervall - En sträng som anger den del av datumet som ska returneras. Intervallet kan vara ett av följande värden:

"D-dagen
"Ww" - vecka
"W" - vardag
"M" - månad
“Q” - kvartal
"Åååå" - år
“Y” - årets dag
"H" - timme
"N" - minut
“S” - andra

  • Datum - Det datum som du vill att funktionen ska returnera en del av.
  • Första dagen i veckan (Frivillig) - En konstant som anger den vardag som funktionen ska använda som den första dagen i veckan. Om blank söndag används som första dagen i veckan. Firstdayofweek kan vara ett av följande värden:

-vbSunday - använder söndag som den första dagen i veckan.
-vbMåndag - använder måndag som första dag i veckan.
-vbTuesday - använder tisdag som den första dagen i veckan.
-vbWednesday - använder onsdagen som den första dagen i veckan.
-vbThursday - använder torsdagen som den första dagen i veckan.
-vbFriday - använder fredagen som den första dagen i veckan.
-vbSaturday - använder lördagen som den första dagen i veckan.
-vbUseSystemDayOfTheWeek - använder den första dagen i veckan som anges av systemets inställningar.

  • Första veckan i år (Frivillig) - En konstant som anger årets första vecka. Om den är tom används den 1 januari veckan som årets första vecka. Firstweekofyear kan vara ett av följande värden:

-vbFirstJan1 - använder veckan som innehåller 1 januari.
-vbFirstFourDays - använder den första veckan som innehåller minst fyra dagar under det nya året.
-vbFirstFullWeek - använder årets första hela vecka.
-vbSystem - använder årets första vecka enligt dina systeminställningar.

Följande kod visar hur du använder DatePart -funktionen:

123456789 Sub UsingTheDatePartFunction ()Dim thePartOfTheDate som heltalthePartOfTheDate = DatePart ("åååå", "12/12/2009")Felsök. Skriv ut thePartOfTheDateAvsluta Sub

Resultatet är:

VBA DateSerial -funktion

VBA DateSerial -funktionen tar ett inmatningsår, månad och dag och returnerar ett datum.

Syntaxen för DateSerial -funktionen är:

DateSerial (år, månad, dag) där:

  • År - Ett heltal mellan 100 och 9999 som representerar året.
  • Månad - Ett heltal som representerar månaden.
  • Dag - Ett heltal som representerar dagen.

Följande kod visar hur du använder DateSerial -funktionen:

123456789 Sub UsingTheDateSerialFunction ()Dim theDate As DatetheDate = DateSerial (2010, 11, 10)Felsök. Skriv ut datumetAvsluta Sub

Resultatet är:

VBA DateValue -funktion

DateValue -funktionen returnerar ett datum när det ges en strängrepresentation av ett datum.

Syntaxen för DateValue -funktionen är:

DateValue (Datum) där:

  • Datum - En sträng som representerar datumet.

Följande kod visar hur du använder DateValue -funktionen:

123456789 Sub UsingTheDateValueFunction ()Dim theDate As DatetheDate = DateValue ("29 oktober 2010")Felsök. Skriv ut datumetAvsluta Sub

Resultatet är:

VBA Day -funktion

Du kan använda dagfunktionen för att returnera dagen för ett inmatningsdatum.

Syntaxen för dagfunktionen är:

Dag (Date_value) där:

  • Date_value - Det datum som du vill extrahera dagen från.

Följande kod visar hur du använder dagfunktionen:

123456789 Sub UsingTheDayFunction ()Dim theDay As IntegertheDay = Day ("10/12/2010")Felsök. Skriv ut dagenAvsluta Sub

Resultatet är:

VBA -timmars funktion

Du kan använda timfunktionen för att returnera timmen för en inmatningstid.

Syntaxen för timfunktionen är:

Timmar (tid) där:

  • Tid - Den tid som du vill extrahera timmen från.

Följande kod visar hur du använder timfunktionen:

123456789 Sub UsingTheHourFunction ()Dim timmen som heltaltheHour = Hour ("2:14:17 AM")Felsök. Skriv ut timmenAvsluta Sub

Resultatet är:

VBA -minutfunktion

Du kan använda minutfunktionen för att returnera minutvärdet för en ingångstid.

Syntaxen för minutfunktionen är:

Minut (tid) där:

  • Tid - Den tid som du vill extrahera minutvärdet från.

Följande kod visar hur du använder minutfunktionen:

123456789 Sub UsingTheMinuteFunction ()Dim theMinuteValue som heltaltheMinuteValue = Minut ("2:14:17 AM")Felsök. Skriv ut theMinuteValueAvsluta Sub

Resultatet är:

VBA andra funktion

Du kan använda den andra funktionen för att returnera det andra värdet för en ingångstid.

Syntaxen för den andra funktionen är:

Andra (tid) där:

  • Tid - Den tid som du vill extrahera det andra värdet från.

Följande kod visar hur du använder den andra funktionen:

123456789 Sub UsingTheSecondFunction ()Dim theSecondValue As IntegertheSecondValue = Andra ("2:14:17 AM")Felsök. Skriv ut theSecondValueAvsluta Sub

Resultatet är:

VBA månad funktion

Du kan använda månadsfunktionen för att returnera månaden för ett inmatningsdatum.

Syntaxen för månadsfunktionen är:

Månad (datumvärde) där:

  • Date_value - Det datum som du vill extrahera månaden från.

Följande kod visar hur du använder månadsfunktionen:

12345678 Sub UsingTheMonthFunction ()Dimma månaden som heltaltheMonth = månad ("18/11/2010")Felsök. Skriv ut theMonthAvsluta Sub

Resultatet är:

VBA MonthName -funktion

Du kan använda funktionen MonthName för att returnera namnet på en månad från ett inmatat månadsnummer.

Syntaxen för MonthName -funktionen är:

MonthName (Number_of_month, [Abbreviate]) där:

  • Number_of_month - Ett heltal mellan 1 och 12.
  • Förkorta (Frivillig) - Anger om månadsnamnet ska förkortas. Om det är tomt används standardvärdet False.
12345678 Sub UsingTheMonthNameFunction ()Dim theMonthName som strängtheMonthName = MonthName (12, True)Felsök. Skriv ut theMonthNameAvsluta Sub

Resultatet är:

VBA TimeSerial -funktion

TimeSerial -funktionen tar en inmatningstimme, minut och sekund och returnerar en tid.

Syntaxen för TimeSerial -funktionen är:

TimeSerial (timme, minut, sekund) där:

  • Timmar - Ett heltal mellan 0 och 23 som representerar timvärdet.
  • Minut - Ett heltal mellan 0 och 59 som representerar minutvärdet.
  • Andra - Ett heltal mellan 0 och 59 som representerar det andra värdet.

Följande kod visar hur du använder TimeSerial -funktionen:

12345678 Sub UsingTheTimeSerialFunction ()Dim theTime As DatetheTime = TimeSerial (1, 10, 15)Felsök. Skriv ut tidenAvsluta Sub

Resultatet är:

VBA TimeValue -funktion

TimeValue -funktionen returnerar en tid från en strängrepresentation av ett datum eller en tid.

Syntaxen för TimeValue -funktionen är:

TimeValue (Time) där:

  • Tid - En sträng som representerar tiden.

Följande kod visar hur du använder TimeValue -funktionen:

12345678 Sub UsingTheTimeValueFunction ()Dim theTime As DatetheTime = TimeValue ("22:10:17")Felsök. Skriv ut tidenAvsluta Sub

Resultatet är:

VBA -vardagsfunktion

Du kan använda veckodagsfunktionen för att returnera ett heltal från 1 - 7 som representerar en veckodag från ett inmatningsdatum.

Syntaxen för veckodagsfunktionen är:

Veckodag (datum, [Firstdayofweek]) där:

  • Datum - Det datum som du vill extrahera veckodagsvärdet från.
  • Första dagen i veckan (Frivillig) - En konstant som anger den vardag som funktionen ska använda som den första dagen i veckan. Om blank söndag används som första dagen i veckan. Firstdayofweek kan vara ett av följande värden:

-vbSunday - använder söndag som första dag i veckan.
-vbMåndag - använder måndag som första dag i veckan.
-vbTuesday - använder tisdag som den första dagen i veckan.
-vbWednesday - använder onsdagen som den första dagen i veckan.
-vbThursday - använder torsdagen som den första dagen i veckan.
-vbFriday - använder fredagen som den första dagen i veckan.
-vbSaturday - använder lördagen som den första dagen i veckan.
-vbUseSystemDayOfTheWeek - använder den första dagen i veckan som anges av systemets inställningar.

Följande kod visar hur du använder veckodagsfunktionen:

1234567 Sub UsingTheWeekdayFunction ()Dim theWeekDay som heltaltheWeekDay = Vardag ("11/20/2019")Felsök. Skriv ut theWeekDayAvsluta Sub

Resultatet är:

VBA WeekdayName -funktion

Du kan använda funktionen WeekdayName för att returnera namnet på en vardag från ett inmatat veckodagsnummer.

Syntaxen för funktionen WeekdayName är:

WeekdayName (Weekday, [Abbreviate], [Firstday oftheweek]) där:

  • Vardag - Ett heltal mellan 1 och 7.
  • Förkorta (Frivillig) -Specificerar om veckodagsnamnet ska förkortas. Om det är tomt används standardvärdet för False.
  • Första dagen i veckan (Frivillig) - En konstant som anger den vardag som funktionen ska använda som den första dagen i veckan. Om blank söndag används som första dagen i veckan. Firstdayofweek kan vara ett av följande värden:

-vbSunday - använder söndag som den första dagen i veckan.
-vbMåndag - använder måndag som första dag i veckan.
-vbTuesday - använder tisdag som den första dagen i veckan.
-vbWednesday - använder onsdagen som den första dagen i veckan.
-vbThursday - använder torsdagen som den första dagen i veckan.
-vbFriday - använder fredagen som den första dagen i veckan.
-vbSaturday - använder lördagen som den första dagen i veckan.
-vbUseSystemDayOfTheWeek - använder den första dagen i veckan som anges av systemets inställningar.

12345678 Sub UsingTheWeekdayNameFunction ()Dim theWeekdayName som strängtheWeekdayName = WeekdayName (4)Felsök. Skriv ut theWeekdayNameAvsluta Sub

Resultatet är:

VBA års funktion

Du kan använda årsfunktionen för att returnera året för ett inmatningsdatum.

Syntaxen för årsfunktionen är:

År (datum_värde) där:

  • Date_value - Det datum som du vill extrahera året från.

Följande kod visar hur du använder årsfunktionen:

12345678 Sub UsingTheYearFunction ()Dim året som heltalår = år ("11/12/2010")Felsök. Skriv ut åretAvsluta Sub

Resultatet är:

Jämför datum i VBA

Du kan jämföra datum med hjälp av operatörerna>, <, och = i VBA. Följande kod visar hur du jämför två datum i VBA.

12345678910111213141516171819 Sub ComparingDates ()Dim dateOne As DateDim dateTwo As DatedateOne = "10/10/2010"dateTwo = "11/11/2010"If dateOne> dateTwo ThenDebug.Print "dateOne is the later date"ElseIf dateOne = dateTwo ThenDebug.Print "De två datumen är lika"AnnanDebug.Print "dateTwo is the later date"Avsluta omAvsluta Sub

Läs mer om hur du formaterar datum som strängar genom att titta på den här självstudien.

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave