Основы офисного программирования и язык VBA


Вычисления над датами - часть 2


Синтаксис:

DatePart(interval, date[,firstdayofweek[, firstweekofyear]])

  • Аргумент interval задает тип возвращаемого временного интервала,
  • date - дата, подлежащая обработке.
  • Необязательные аргументы Firstdayofweek и Firstweekofyear имеют тот же смысл, что и для функции DateDiff.

Примеры вызова:

? DatePart("ww", "02.09.89") 35 ? DatePart("w", "02.09.89") 7

Функция DateSerial позволяет вычислить значение даты типа Variant (Date) по ее компонентам, - году, месяцу и дню. Ее синтаксис:

DateSerial(year, month, day)

Значение каждого аргумента должно лежать в соответствующем диапазоне: 100 -- 9999 для года, 1 - 31 для дней и 1 - 12 для месяцев. Можно также использовать для аргументов числовые выражения для описания относительной даты.

Примеры:

? DateSerial(1997 - 25, 10 - 2, 18 - 1) 17.08.72 ? DateSerial(Year(Now) - 3,Month(Now) - 2, Day(Now) - 1) 08.03.96

Функция DateValue переводит аргумент-строку в дату. В отличие от функции преобразования CDate, функция DateValue правильно обрабатывает допустимые даты, содержащие полные или краткие названия месяцев.

Ее синтаксис:

DateValue(date)

Аргумент date может задавать как дату, так и время. Возможные разные форматы задания даты, в том числе и с названиями месяцев:

Примеры:

? DateValue ("25.04.1997") 25.04.97 ? DateValue ("04.25.1997") 25.04.97 ? DateValue ("25 апреля 1997") 25.04.97 ? DateValue ("25 - апр.-97") 25.04.97 ? DateValue ("Апрель, 25, 97") 25.04.97 ? DateValue ("25/04/1997") 25.04.97 ? DateValue ("25.04") 25.04.99

Последнее равенство связано с тем: что при отсутствии года, функция DateValue использует текущий год по системному календарю компьютера.

Функции Day(date), Month(date), и Year(date) являются, в некотором смысле, обратными к двум предыдущим. Они по аргументу-дате определяют номер дня, месяца и года. Функция Weekday(date, [firstdayofweek]) возвращает значение типа Variant (Integer), содержащее целое число, представляющее день недели.


Начало  Назад  Вперед