/ / Data și ora Excel VBA

Excel VBA Data și ora

Anul, luna, Ziua unei date | DateAdd | Data și ora curente | Ora, Minut, Secundă | TIMEVALUE

Aflați cum să lucrați datele și orele în Excel VBA.

Plasați un buton de comandă pe foaia dvs. de lucru și adăugați linii de cod de mai jos. Pentru a executa liniile de cod, faceți clic pe butonul de comandă de pe foaie.

Anul, luna, Ziua unei date

Următoarea macrocomandă primește anul unei date. Pentru a declara o dată, utilizați instrucțiunea Dim. Pentru a inițializa o dată, utilizați funcția DateValue.

Cod:

Dim exampleDate As Date

exampleDate = DateValue("Jun 19, 2010")

MsgBox Year(exampleDate)

Rezultat:

Anul unei date în Excel VBA

Notă: Utilizați Luna și Ziua pentru a obține luna și ziua unei date.

DateAdd

Pentru a adăuga un număr de zile la o dată, utilizațiFuncția DateAdd. Funcția DateAdd are trei argumente. Completați "d" pentru primul argument pentru a adăuga zile. Completați 3 pentru al doilea argument pentru a adăuga 3 zile. Al treilea argument reprezintă data la care va fi adăugat numărul de zile.

Cod:

Dim firstDate As Date, secondDate As Date

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

MsgBox secondDate

Rezultat:

DateAdd

Notă: Modificați "d" la "m" pentru a adăuga un număr de luni la o dată. Plasați cursorul pe DateAdd în Editorul Visual Basic și faceți clic pe F1 pentru ajutor pe celelalte specificatoare de intervale. Datele sunt în formatul US. Luni prima, Zilele a doua. Acest tip de format depinde de setările regionale ale Windows.

Data și ora curente

Pentru a obține data și ora curente, utilizați funcția Now.

Cod:

MsgBox Now

Rezultat:

Data și ora curente

Ora, Minut, Secundă

Obțineți ora oră, utilizați funcția Ora.

Cod:

MsgBox Hour(Now)

Rezultat:

Ora orelor curente

Notă: Utilizați Minute și Second pentru a obține minutul și a doua oară.

TIMEVALUE

Funcția TimeValue convertește un șir la un număr serial de timp. Numărul de serie al timpului este un număr cuprins între 0 și 1. De exemplu, amiază (la jumătatea zilei) este reprezentat ca 0,5.

Cod:

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

Rezultat:

TIMEVALUE

Acum, pentru a vedea clar că Excel se ocupă de momente interne ca numere între 0 și 1, adăugați următoarele linii de cod:

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

Rezultat:

Timpul serialului

De asemenea, citiți: