/ / Екцел ВБА Датум и време

Екцел ВБА Датум и време

Година, Месец, Дан Датума | ДатеАдд | Тренутни датум и време | Хоур, Минуте, Сецонд | ТимеВалуе

Научите како радити датуми и времена ин Екцел ВБА.

Поставите командно дугме на свој радни лист и додајте линије кода испод. Да бисте извршили линије кода, кликните на командно дугме на листу.

Година, Месец, Дан Датума

Следећи макро добија годину дана. Да бисте пријавили датум, користите изјаву Дим. Да бисте иницијализовали датум, користите функцију ДатеВалуе.

Код:

Dim exampleDate As Date

exampleDate = DateValue("Jun 19, 2010")

MsgBox Year(exampleDate)

Резултат:

Година Датума у ​​Екцелу ВБА

Напомена: Користите Месец и Дан да бисте добили месец и дан датума.

ДатеАдд

Да бисте додали број дана у датум, користитеДатеАдд функција. Функција ДатеАдд има три аргумента. Попуните "д" за први аргумент за додавање дана. Испуните 3 за други аргумент да бисте додали 3 дана. Трећи аргумент представља датум до кога ће се додати број дана.

Код:

Dim firstDate As Date, secondDate As Date

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

MsgBox secondDate

Резултат:

ДатеАдд

Белешка: Промените "д" на "м" да додате број месеци до датума. Поставите курсор на ДатеАдд у Висуал Басиц Едитор и кликните на Ф1 за помоћ на другим одредишним интервалима. Датуми су у америчком формату. Први месеци, Други дан. Ова врста формата зависи од регионалних подешавања вашег прозора.

Тренутни датум и време

Да бисте добили тренутни датум и време, користите функцију Сада.

Код:

MsgBox Now

Резултат:

Тренутни датум и време

Хоур, Минуте, Сецонд

Узмите сат времена, користите функцију Сат.

Код:

MsgBox Hour(Now)

Резултат:

Сат тренутног времена

Напомена: Користите минуту и ​​секунду да бисте добили минут и други пут.

ТимеВалуе

Функција ТимеВалуе претвара стринг на временски серијски број. Временски серијски број је број између 0 и 1. На пример, подне (на пола дана) је приказано као 0,5.

Код:

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

Резултат:

ТимеВалуе

Сада, да би се јасно видело да Екцел интерно рукује интерно као бројеве између 0 и 1, додајте следеће линије кода:

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

Резултат:

Серијски број времена

Такође прочитајте: