DateValue (строка с датой)
|
Функция
|
Значение даты, соответствующее строке с датой
|
Day (дата)
|
Функция
|
Целое значение, соответствующее дню месяца, заданного датой
|
Hour (время)
|
Функция
|
Целое значение между 0 и 23 включительно, представляющее час суток, заданный указанным временем
|
Minute (время)
|
Функция
|
Целое значение между 0 и 59 включительно, представляющее минуты, заданные указанным временем
|
Month (дата)
|
Функция
|
Целое значение между 0 и 12 включительно, представляющее месяц, заданный указанной датой
|
MonthName (месяц, сократить)
|
Функция (только в VBA 6)
|
Строка, содержащая название месяца, соответствующего аргументу месяц, который должен быть числом от 1 до 12. Если необязательный аргумент сократить указан и равен True, то возвращаемая строка будет содержать сокращенное название месяца
|
NOW
|
Функция
|
Значение, представляющее текущие системные дату и время
|
Second(время)
|
Функция
|
Целое значение между 0 и 59 включительно, представляющее секунды, заданные указанным временем
|
Time
|
Функция
|
Значение, представляющее текущее системное время
|
Time (время)
|
Оператор
|
Устанавливает системное время по значению аргумента время
|
Timer
|
Функция
|
Число секунд, прошедших с полуночи
|
TimeSerial (часы, минуты, секунды)
|
Функция
|
Значение времени, заданное аргументами часы, минуты, секунды
|
TimeValue (строка_с_временем)
|
Функция
|
Значение времени, соответствующее строке со временем (вся информация о дате будет отброшена)
|
Weekday (дата)
|
Функция
|
Целое число, представляющее день недели, соответствующий указанной дате
|
WeekdayName
(день_не дели, сократить, первый день недели)
|
Функция
|
Строка, содержащая название дня недели, заданного (только в аргументом де н ь _ н е де л и, который должен
VBA 6) быть целым числом от 1 до 7. Если необязательный аргумент с о к р а т и т ь указан и равен True, то возвращаемая строка будет содержать сокращенное название дня недели. Нумерацию дней недели можно менять, задавая необязательный аргумент первый _ день _ недели равным константам типа vbMonday, vbTuesday и т.д.
|
Year(дата)
|
Функция
|
Целое число, представляющее год, соответствующий указанной дате
|
В VBA есть несколько простых операторов и функций для работы с системной датой и системным временем, т.е. со значением даты и времени, которое изменяется и хранится встроенными часами компьютера.
Функция Now возвращает текущие системные дату и время в формате переменной типа Data, как, например, в случае datЛовиМомент = Now.
Чтобы обеспечить работу с системным временем и системной датой по отдельности, VBA предлагает по паре отдельных команд для каждого из этих двух элементов системы. Несколько неожиданным при этом оказывается то, что в каждой из пар и оператор, и функция имеют одинаковые имена.
Например, чтобы извлечь (т.е. получить) системное время в формате даты VBA, нужно использовать функцию Time, а чтобы установить (т.е. задать) системное время, необходимо использовать оператор Time. Другими словами, ключевое слово Time выполняет различные действия в зависимости от контекста:
datЭтоMoeBpeмя = Time ' функция Time возвращает значение
' системного времени
Time (113:15 АМ#) ' оператор Time устанавливает системное время
Подобным образом работают и различаются соответствующие функции Date и оператор Date.
Как вы знаете, время - понятие относительное. Поэтому главное - получить дату и время в таком виде, чтобы сравнить их с другими датами и временем. Иногда нужно знать, как далеко отстоят одна дата от другой или одно время от другого. А иногда бывает нужно знать, какая дата будет, скажем, через два года и три месяца. Несколько предлагаемых в VBA функций для обработки значений дат и времени превращают вычисления с датами в совсем простое дело.
Используйте функцию DateAdd, когда нужно узнать, какая дата наступит через три года или что было на часах один час и пятнадцать минут тому назад. Такие вычисления можно выполнить и без компьютера вообще, но они требуют особой внимательности, поскольку операции с компонентами значений дат и времени не подчиняются правилам привычной арифметики десятичных чисел (дней недели - 7, секунд - 60, и т.д.), да и самих компонентов наберется немало.
Читать дальше