/ / Excel VBA Datum en tijd

Excel VBA-datum en -tijd

Jaar, maand, dag van een datum | DateAdd | Huidige datum en tijd | Uur, minuut, seconde | Tijdswaarde

Leer hoe je kunt werken data en tijden in Excel VBA.

Plaats een opdrachtknop op uw werkblad en voeg de onderstaande coderegels toe. Om de coderegels uit te voeren, klikt u op de opdrachtknop op het blad.

Jaar, maand, dag van een datum

De volgende macro krijgt het jaar van een datum. Gebruik de Dim-instructie om een ​​datum te declareren. Om een ​​datum te initialiseren, gebruikt u de DateValue-functie.

Code:

Dim exampleDate As Date

exampleDate = DateValue("Jun 19, 2010")

MsgBox Year(exampleDate)

Resultaat:

Jaar van een datum in Excel VBA

Opmerking: gebruik maand en dag om de maand en de dag van een datum te krijgen.

DateAdd

Als u een aantal dagen aan een datum wilt toevoegen, gebruikt u deDateAdd-functie. De DateAdd-functie heeft drie argumenten. Vul "d" in voor het eerste argument om dagen toe te voegen. Vul 3 in voor het tweede argument om 3 dagen toe te voegen. Het derde argument vertegenwoordigt de datum waarop het aantal dagen zal worden toegevoegd.

Code:

Dim firstDate As Date, secondDate As Date

firstDate = DateValue("Jun 19, 2010")
secondDate = DateAdd("d", 3, firstDate)

MsgBox secondDate

Resultaat:

DateAdd

Notitie: Wijzig "d" in "m" om een ​​aantal maanden toe te voegen aan een datum. Plaats uw cursor op DateAdd in de Visual Basic Editor en klik F1 voor hulp bij de andere intervalspecificaties. Datums zijn in Amerikaanse indeling. Maanden eerst, dagen als tweede. Dit type indeling is afhankelijk van de regionale instellingen van Windows.

Huidige datum en tijd

Gebruik de functie Nu om de huidige datum en tijd op te halen.

Code:

MsgBox Now

Resultaat:

Huidige datum en tijd

Uur, minuut, seconde

Haal het uur van een tijd op, gebruik de uurfunctie.

Code:

MsgBox Hour(Now)

Resultaat:

Uur van de huidige tijd

Opmerking: gebruik Minuut en seconde om de minuut en de seconde van een tijd te krijgen.

Tijdswaarde

De functie TimeValue converteert een reeks naar een tijdserienummer. Het serienummer van de tijd is een getal tussen 0 en 1. Bijvoorbeeld, middag (halverwege de dag) wordt weergegeven als 0,5.

Code:

MsgBox TimeValue("9:20:01 am")

Resultaat:

Tijdswaarde

Om duidelijk te zien dat Excel de tijden intern verwerkt als getallen tussen 0 en 1, voegt u de volgende coderegels toe:

Dim y As Double
y = TimeValue("09:20:01")
MsgBox y

Resultaat:

Tijd serienummer

Lees ook: