VBA TimeValue

Tidsvärde i VBA är en inbyggd funktion som också kategoriseras under datum- och tidsfunktionen i VBA, den här funktionen som namnet antyder ger oss det numeriska värdet på datumet som ett argument, det tar ett enda argument som är datumet och returnerar det numeriska värdet från argumentet.

Vad gör tidsvärdesfunktionen i VBA?

Tidsvärdesfunktionen i VBA Excel returnerar tidsvärdesdelen från hela datum och tid. Datum och tid sparas som serienummer i Excel. Serienumret representerar DATUM och decimaltal representerar tiden. Med TimeValue-funktionen kan vi bara få tidsserienumret, dvs. decimaltal.

Syntax för VBA TimeValue-funktion

Syntaxen för VBA TimeValue-funktionen enligt följande.

Som vi sa TimeValue-funktionen returnerar serienummerdelen av det angivna datumet som lagras som ett textvärde. Tiden är inget annat än den faktiska tiden vi letar efter för att få serienumret. Kom ihåg att Time Value bara kan få serienumret från den tid som lagras som text, inte som TIME.

Exempel på TimeValue-funktion med Excel VBA

Nedan följer exemplen på VBA TimeValue-funktionen.

Du kan ladda ner denna VBA TimeValue-funktionsmall här - VBA TimeValue-funktionsmall

VBA TimeValue Exempel # 1

Titta nu på det enkla exemplet på VBA TimeValue-funktionen.

Koda:

 Sub TIMEVALUE_Function_Example1 () 'Konvertera den givna inmatningssträngen till en giltig tid och visas på skärmen' Variabeldeklaration Dim MyTime As Date 'Tilldela tid till en variabel MyTime = TimeValue ("28-05-2019 16:50:45")' Visa utdata på skärmen MsgBox "Aktuell tid är:" & MyTime, vbInformation, "VBA TIMEVALUE Funktion" End Sub 

Det första jag har förklarat variabeln "MyTime" som datum.

 Dim MyTime As Date 

Sedan har jag tilldelat variabeln värdet genom att tillämpa TimeValue.

MyTime = TimeValue ("28-05-2019 16:50:45")

Sedan i meddelandefältet har jag tilldelat variabelresultatet.

MsgBox "Levererad tid är:" & MyTime, vbInformation, "TIMEVALUE-funktion".

Om jag kör koden med F5-tangenten eller manuellt så får vi resultatet enligt följande.

VBA TimeValue Exempel # 2

För samma kod kommer jag att förklara VBA-variabeln som "Dubbel".

Koda:

 Sub TIMEVALUE_Function_Example1 () 'Konvertera den givna inmatningssträngen till en giltig tid och visas på skärmen' Variabeldeklaration Dim MyTime som dubbel 'Tilldela tid till en variabel MyTime = TimeValue ("28-05-2019 16:50:45")' Visa utdata på skärmen MsgBox "Aktuell tid är:" & MyTime, vbInformation, "VBA TIMEVALUE Funktion" End Sub 

Nu om jag kör VBA-koden manuellt eller genom att trycka på F5-tangenten, kommer den att visa serienumret en del av tiden 16:50:45.

För att få en bättre förståelse kommer jag först att ange siffrorna i meddelandefältet VBA till en av cellerna.

Nu kommer jag att använda tidsformatet för att kontrollera det exakta resultatet.

När du konverterar det till ett tidsformat kan du se den exakta tiden.

VBA TimeValue Exempel # 3

Titta nu på nedanstående data.

Vi har data och tid tillsammans från A1 till A14 celler. För den andra kolumnen behöver vi bara extrahera tidsvärdet. Eftersom vi har mer än en cell att hantera måste vi använda öglor för att utföra samma uppsättning uppgifter för alla celler.

Vi har data från första cellen till den 14: e cellen, så vår slinga ska köras 14 gånger. Vi måste använda FOR NEXT loop i VBA för att nämna nedre gräns och övre gräns. Nedanstående kod är den redan skrivna koden för att extrahera tidsvärdet från kombinationen datum och tid.

Koda:

 Sub TimeValue_Example3 () Dim k As Integer For k = 1 To 14 Cells (k, 2). Value = TimeValue (Cells (k, 1) .Value) Next k End Sub 

När vi kör koden får vi värdena som nedan.

Om du vill se tiden, använd TIME-format på den.

Så här fungerar TIME VALUE-funktionen i VBA och Excel.