/ / Excel VBA Datum a čas

Datum a čas aplikace Excel VBA

Rok, měsíc, den data | DateAdd | Aktuální datum a čas | Hodina, Minuta, Druhá | TimeValue

Naučte se pracovat data a časy v Excel VBA.

Na pracovním listu umístěte příkazové tlačítko a přidejte řádky kódu níže. Chcete-li spustit řádky kódu, klepněte na příkazové tlačítko na listu.

Rok, měsíc, den data

Následující makro získá rok data. Chcete-li deklarovat datum, použijte příkaz Dim. Chcete-li inicializovat datum, použijte funkci DateValue.

Kód:

Dim exampleDate As Date

exampleDate = DateValue("Jun 19, 2010")

MsgBox Year(exampleDate)

Výsledek:

Rok data v aplikaci Excel VBA

Poznámka: Měsícem a dnem použijte měsíc a den data.

DateAdd

Chcete-li k datu přidat několik dní, použijteFunkce DateAdd. Funkce DateAdd má tři argumenty. Vyplňte "d" pro první argument přidání dnů. Napište 3 pro druhý argument a přidejte 3 dny. Třetí argument představuje datum, do kterého bude přidán počet dní.

Kód:

Dim firstDate As Date, secondDate As Date

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

MsgBox secondDate

Výsledek:

DateAdd

Poznámka: Změňte "d" na "m" a přidejte několik měsíců k datu. Umístěte kurzor na DateAdd v editoru jazyka a klepnutím na tlačítko F1 získáte pomoc u ostatních specifikátorů intervalů. Termíny jsou ve formátu US. Měsíce první, Dny druhé. Tento typ formátu závisí na nastavení regionálních oken.

Aktuální datum a čas

Chcete-li získat aktuální datum a čas, použijte funkci Nyní.

Kód:

MsgBox Now

Výsledek:

Aktuální datum a čas

Hodina, Minuta, Druhá

Získejte hodinu času, použijte funkci Hodina.

Kód:

MsgBox Hour(Now)

Výsledek:

Hodina aktuálního času

Poznámka: Použijte minuty a sekundy, abyste získali minuty a sekundy.

TimeValue

Funkce TimeValue převede řetězec na časové sériové číslo. Časové sériové číslo je číslo mezi 0 a 1. Například poludní (v polovině dne) je reprezentováno jako 0,5.

Kód:

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

Výsledek:

TimeValue

Nyní zřetelně vidíte, že Excel zpracovává časy vnitřně jako čísla mezi 0 a 1, přidejte následující řádky kódu:

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

Výsledek:

Časové sériové číslo

Také si přečtěte: