VBA TimeValue - Hur använder jag tidsvärdesfunktionen i Excel VBA?

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ärdedelen från hela datum och tid. Datum och tid sparas som serienummer i Excel. Serienumret representerar DATUM och decimaltalet 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 säger returnerar TimeValue-serien 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 tidsvärde bara kan få serienumret från tiden som lagras som text, inte som TID.

Exempel på TimeValue-funktion med Excel VBA

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

VBA TimeValue Exempel # 1

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

Koda:

Sub TIMEVALUE_Function_Example1 () 'Konvertera den angivna inmatningssträngen till en giltig tid och visas på skärmen' Variabeldeklaration Dim MyTime som datum '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

För det första har jag 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 meddelanderutan har jag tilldelat variabelresultatet.

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

Om jag kör koden med F5-tangenten eller manuellt, 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

Om jag nu 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 loopar för att utföra samma uppsättning uppgifter för alla celler.

Vi har data från en st cell till 14 : e cell, så vår slinga ska pågå under 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ärde 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 sedan TIME-format på den.

Så, så fungerar funktionen TIDVÄRDE i VBA och Excel.

Intressanta artiklar...