Время и дата
Для работы с датой в VBA предусмотрен специальный тип Date. Он занимает 8 байт и хранит дату во внутреннем представлении VB. Чтобы преобразовать дату и время из строки в этот формат, можно воспользоваться функциями DateValue и TimeValue.
Sub DateConversionTest()
Dim TestDate As Date
TestDate = DateValue("2/3/98")
MsgBox (Str(Year(TestDate)))
End Sub
Или в случае со временем:
Sub TimeConversionTest()
Dim TestDate As Date
TestDate = TimeValue("11:12:13")
MsgBox Str(Minute(TestDate))
End Sub
Чтобы хранить вместе и дату и время, можно сделать так:
Sub Test()
Dim MyTimeDate As Date
MyTimeDate = DateValue("7/2/93") + TimeValue("11:12:13")
MsgBox Str(Minute(MyTimeDate))
MsgBox Str(Year(MyTimeDate))
End Sub
Функции для работы с датой и временем:
Month(переменная типа Date)
Day(переменная типа Date)
Year(переменная типа Date)
Hour(переменная типа Date)
Minute(переменная типа Date)
Second(переменная типа Date)
WeekDay(переменная типа Date)
Возвращают соответственно месяц, день, год, часы, минуты, секунды и день недели.
Sub Test()
Dim MyDate As Date
MyDate = DateValue("3/7/89")
If (WeekDay(MyDate) = vbSunday) Then MsgBox ("Sunday")
End Sub
vbSunday, vbMonday, ... - предопределенные константы для дней недели.