Excel VBA-tid
VBA TIME-funktionen returnerar den aktuella tiden som utgång och kan också användas som inmatning till olika makrolinjer med kod. Denna funktion har ingen parameteruppsättning för den och har därmed den enklaste syntaxen som TID-ord med tomma parenteser som kan ses som nedan:
Syntaxen för VBA TIME-funktion:
Tid()
I själva verket finns det inget behov av parenteser, du kan helt enkelt använda själva ordet TID i ditt kodblock som gör att ditt system kan returnera aktuell tid. Vi har också en liknande funktion som heter NU () under Excel VBA som returnerar aktuell tid tillsammans med datumet. Men i denna artikel skulle hela vårt fokus vara på att använda TIME-funktionen och titta på olika arbetsexempel på samma.
Hur använder jag Excel VBA Time-funktion?
Vi kommer att lära dig att använda en VBA Time-funktion med några exempel i Excel.
Du kan ladda ner denna VBA Time Excel-mall här - VBA Time Excel MallVBA-tidsfunktion - exempel # 1
Aktuell systemtid med TIME-funktionen:
Följ stegen nedan för att visa den aktuella tiden för ditt system.
Steg 1: Definiera en delprocedur.
Koda:
Sub TimeExample1 () Slut Sub
Steg 2: Definiera en variabel som kommer att vara användbar för att hålla tiden för dig. Definiera det som sträng.
Koda:
Sub TimeExample1 () Dim CurrentTime As String End Sub
Obs: Anledningen bakom att definiera denna variabel som sträng är utgången från TIME-funktionen i en sträng.
Steg 3: Använd VBA TIME-funktionen för att tilldela aktuell tid till den variabel som definieras i steget ovan med en tilldelningsoperatör.
Koda:
Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time End Sub
Steg 4: Som jag nämnde tidigare finns det inget behov av att lägga till parenteser efter TIME-funktionen eftersom det här är en flyktig funktion. Med detta sagt kommer följande kod att ge motsvarande utdata i jämförelse med ovanstående kod.
Koda:
Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time () Slut Sub
Steg 5: Använd nu en MsgBox-funktion för att visa aktuell tid med hjälp av displaymeddelanderutan.
Koda:
Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time () MsgBox CurrentTime End Sub
Steg 6: Kör den här koden genom att trycka på F5 eller Run-knappen och se utgången. Du bör få utdata som visas på bilden nedan.
Observera att den tid som reflekteras i bilden ovan är den tid då koden körs på systemet. När du försöker själv, kan din produktion variera beroende på den tid du arbetar med den här koden.
VBA-tidsfunktion - exempel # 2
VBA TIME i kombination med en datumfunktion för att returnera aktuell tid med dagens datum:
Som det har informerats tidigare i introduktionen av denna artikel finns det en funktion som heter NU () som ger dig både aktuellt datum och tid i Microsoft Excel. Se skärmdumpen nedan.
Men i VBA har vi inte den här funktionen fungerar. Därför måste vi i VBA använda en kombination av VBA Date- och VBA TIME-funktioner för att få aktuellt datum och aktuell tid. VBA Date ger ett aktuellt datum och VBA Time ger aktuell tid (vilket vi redan har sett i det första exemplet).
Låt oss se steg för steg hur vi kan uppnå detta.
Steg 1: Sätt i en ny modul i ditt Excel VBA-skript.
Steg 2: Definiera en ny delprocedur genom att ge ett namn till makroen.
Koda:
Subexempel2 () Slut Sub
Steg 3: Vi ville att vår utgång ska lagras i cell A1 på vårt excel-ark. För det börjar du skriva koden enligt nedan.
Koda:
Subexempel2 () Område ("A1"). Värde = Slut Sub
Steg 4: Använd nu en kombination av VBA DATE och VBA TIME-funktioner som visas nedan och tilldela det värde till cell A1.
Koda:
Subexempel2 () Område ("A1"). Värde = Datum & "" & Tidsslutsub
DATE-funktionen returnerar det aktuella datumet för systemet och TIME-funktionen returnerar den aktuella tiden. Det vita utrymmet som är inneslutet i dubbla citat (“”) gör det möjligt att ha ett avstånd mellan datum och tid i den slutliga utgången. Två & (och) operatörer fungerar som sammanlänkande operatörer som sammanlänker DATE och TIME med utrymme i den.
Steg 5: Kör koden genom att slå F5 eller Run-knappen manuellt. Du kommer att se utgången i cell A1 i ditt kalkylblad som slag:
Här, igen, observera att den tid som reflekteras i cell A1 är datum och tid då denna kod körs av mig själv. Därför kommer utgångarna att vara annorlunda när du kör denna kod.
Vi kan också formatera datum- och tidsvärdena med hjälp av NumberFormat-funktionen under VBA.
Steg 6: Skriv koden som nämns nedan i ditt VBA-skript.
Koda:
Subexempel2 () Område ("A1"). Värde = Datum & "" & Tidsintervall ("A1"). AntalFormat = "dd-mmm-åååå h: mm: ss AM / PM" Slut Sub
Steg 7: Tryck på F5 eller Run-knappen manuellt så ser du utdata som nedan i cell A1 i ditt kalkylblad.
VBA-tidsfunktion - exempel # 3
VBA TIME-funktion för att spåra öppettid och datum för en arbetsbok:
Ibland finns det ett kalkylblad som vi öppnar ofta (som medarbetarlista för en organisation) och gör ändringar i det. Vi kanske är intresserade av att veta datum och tid då ändringarna har gjorts i kalkylbladet. VBA Time-funktionen kan användas för att spåra datum och tid varje gång en arbetsbok öppnas. Se stegen nedan för att arbeta på samma sak.
Steg 1: Skapa ett nytt kalkylblad i din Excel-arbetsbok och byt namn på det enligt din bekvämlighet. Jag kommer att byta namn på det som (Time_Track).
Steg 2: Dubbelklicka på ThisWorkbook under VBE (Visual Basics Editor).
Steg 3: Välj Arbetsbok istället för Allmänt från listrutan med objekt.
Steg 4: Du ser att en ny privat delprocedur definieras under namnet Workbook_Open () i VBE.
Koda:
Privat underarbetsbok_Öppna () Avsluta under
Steg 5: Skriv ned koden nedan i den här makroundersökningen som visas på bilden nedan:
Koda:
Privat underarbetsbok_Öppna () Dim LB så länge LB = Ark ("Time_Track"). Celler (rader. Antal, 1). Änd (xlUp). Rad + 1 ark ("Time_Track"). Celler (LB, 1) .Värde = Datum & "" & Tid () Slut sub
Här definieras en variabel LB av typen Long för att ta reda på cellen bredvid den sist använda cellen där utgången kan lagras. Sedan har vi med hjälp av en kombination av VBA DATE och TIME-funktioner tilldelat ett värde under den cellen.
Steg 6: Kör koden genom att slå F5 eller Run-knappen manuellt och se utgången under kolumn A i ett kalkylblad.
Denna kod lagrar värdet för Datum och tid varje gång du öppnar kalkylbladet Time_Track.
Det här är från den här artikeln. Låt oss ta upp saker genom att skriva några saker att komma ihåg.
Saker att komma ihåg
- VBA TIME-funktion lagrar output som en sträng i Excel. Vi kan dock också lagra det som datumformat medan vi definierar en variabel som datum istället för en sträng.
- TID-funktionen kräver inget argument i den. Det är en flyktig funktion.
- Även den behöver inte parenteser för att ringa funktionen. Endast TID räcker för att få aktuell tid.
- TIME-funktionen lagrar som standard tidsvärdet i hh: mm: ss-format (24 timmars klockformat). Ibland beror emellertid outputformatet också på ditt systemtidsformat.
Rekommenderade artiklar
Detta har varit en guide till VBA Time Function. Här har vi diskuterat hur man använder Excel VBA-tidsfunktioner och vi har också lärt oss Kombinationen av datum och tid som ett alternativ till Nu () Funktion och spårar arbetsböckerna öppna poster tillsammans med några praktiska exempel och nedladdningsbar Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -
- Hur skapar jag Excel VBA MsgBox?
- WORKDAY Excel-funktion | Formel
- Guide till VBA Do While Loop
- Infoga datum i Excel