Функции даты VBA

Содержание

В этом руководстве мы рассмотрим различные встроенные функции даты VBA.

Функция даты VBA

Вы можете использовать функцию даты, чтобы вернуть текущую дату.

Синтаксис функции Date - Date (). У него нет аргументов.

В следующем коде показано, как использовать функцию даты:

12345678 Sub UsingTheDateFunction ()Уменьшить дату как датуtheDate = Дата ()Отладка. Распечатать датуКонец подписки

Результат:

Функция VBA Now

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

Синтаксис функции Now: Now (). У него нет аргументов.

В следующем коде показано, как использовать функцию «Сейчас»:

12345678 Sub UsingTheNowFunction ()Уменьшить дату как датуtheDate = Сейчас ()Отладка. Распечатать датуКонец подписки

Результат:

Функция времени VBA

Вы можете использовать функцию времени, чтобы вернуть текущее время.

Синтаксис функции времени - Time (). У него нет аргументов.

В следующем коде показано, как использовать функцию времени:

12345678 Sub UsingTheTimeFunction ()Уменьшить время как датуtheTime = Время ()Отладка. Распечатать времяКонец подписки

Результат:

Функция DateAdd в VBA

Вы можете использовать функцию DateAdd, чтобы добавить интервал даты / времени к дате или времени, и функция вернет результирующую дату / время.

Синтаксис функции DateAdd:

DateAdd (интервал, число, дата) где:

  • Интервал - строка, указывающая тип используемого интервала. Интервал может быть одним из следующих значений:

«Д» - день
«Ww» - неделя
«W» - будний день
«М» - месяц
«Q» - четверть
«Гггг» - год
«Y» - день года
«Ч» - час
«N» - минуты
«S» - второй

  • Число - количество интервалов, которые вы хотите добавить к исходной дате / времени.
  • Дата - исходная дата / время.

Примечание. При использовании дат в коде необходимо заключить их в кавычки или #.

В следующем коде показано, как использовать функцию DateAdd:

123456789 Sub UsingTheDateAddFunction ()Затемнить позже Дата как ДатаLaterDate = DateAdd ("м", 10, "12.11.2019")Отладка.Печать позже ДатаКонец подписки

Результат:

Функция VBA DateDiff

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

Синтаксис функции DateDiff:

DateDiff (Interval, Date1, Date2, [Firstdayofweek], [Firstweekofyear]) где:

  • Интервал - строка, указывающая тип используемого интервала. Интервал может быть одним из следующих значений:

«Д» - день
«Ww» - неделя
«W» - будний день
«М» - месяц
«Q» - четверть
«Гггг» - год
«Y» - день года
«Ч» - час
«N» - минуты
«S» - второй

  • Date1 - значение даты, представляющее более раннюю дату.
  • Date2 - значение даты, представляющее более позднюю дату.
  • Первый день недели (По желанию) - константа, указывающая день недели, который функция должна использовать в качестве первого дня недели. Если пусто, то воскресенье используется как первый день недели. Firstdayofweek может быть одним из следующих значений:

-vbSunday - использовать воскресенье как первый день недели.
-vbMonday - использовать понедельник как первый день недели.
-vbTuesday - вторник используется как первый день недели.
-vbWednesday - среда как первый день недели.
-vbThursday - использует четверг как первый день недели.
-vbFriday - использовать пятницу как первый день недели.
-vbSaturday - использовать субботу как первый день недели.
-vbUseSystemDayOfTheWeek - использует первый день недели, указанный в настройках вашей системы.

  • Первая неделя года (По желанию) - Константа, определяющая первую неделю года. Если поле пусто, то неделя 1 января используется как первая неделя года. Firstweekofyear может быть одним из следующих значений:

-vbFirstJan1 - использует неделю с 1 января.
-vbFirstFourDays - использует первую неделю, которая содержит не менее четырех дней нового года.
-vbFirstFullWeek - использует первую полную неделю года.
-vbSystem - использует первую неделю года, как указано в настройках вашей системы.

В следующем коде показано, как использовать функцию DateDiff:

123456789 Sub UsingTheDateDiffFunction ()Уменьшите разницу между двумя датами как долгоtheDifferenceBetweenTwoDates = DateDiff («q», «11/11/2010», «10/12/2012»)Debug.Print theDifferenceBetweenTwoDatesКонец подписки

Результат:

Функция VBA DatePart

Вы можете использовать функцию DatePart, чтобы вернуть часть (день, неделя, квартал, месяц и т. Д.) Заданной даты.

Синтаксис функции DatePart:

DatePart (Interval, Date, [Firstdayofweek], [Firstweekofyear]), где:

  • Интервал - строка, указывающая возвращаемую часть даты. Интервал может быть одним из следующих значений:

«Д» - день
«Ww» - неделя
«W» - будний день
«М» - месяц
«Q» - четверть
«Гггг» - год
«Y» - день года
«Ч» - час
«N» - минуты
«S» - второй

  • Дата - дата, часть которой должна возвращать функция.
  • Первый день недели (По желанию) - константа, указывающая день недели, который функция должна использовать в качестве первого дня недели. Если пусто, то воскресенье используется как первый день недели. Firstdayofweek может быть одним из следующих значений:

-vbSunday - использовать воскресенье как первый день недели.
-vbMonday - использовать понедельник как первый день недели.
-vbTuesday - вторник используется в качестве первого дня недели.
-vbWednesday - среда как первый день недели.
-vbThursday - использует четверг как первый день недели.
-vbFriday - использовать пятницу как первый день недели.
-vbSaturday - использовать субботу как первый день недели.
-vbUseSystemDayOfTheWeek - использует первый день недели, указанный в настройках вашей системы.

  • Первая неделя года (По желанию) - Константа, определяющая первую неделю года. Если поле пусто, то неделя 1 января используется как первая неделя года. Firstweekofyear может быть одним из следующих значений:

-vbFirstJan1 - использует неделю с 1 января.
-vbFirstFourDays - использует первую неделю, которая содержит не менее четырех дней нового года.
-vbFirstFullWeek - использует первую полную неделю года.
-vbSystem - использует первую неделю года, как указано в настройках вашей системы.

В следующем коде показано, как использовать функцию DatePart:

123456789 Sub UsingTheDatePartFunction ()Уменьшите значение параметра thePartOfTheDate как целое числоthePartOfTheDate = DatePart («гггг», «12.12.2009»)Debug.Print thePartOfTheDateКонец подписки

Результат:

Функция VBA DateSerial

Функция VBA DateSerial принимает входные год, месяц и день и возвращает дату.

Синтаксис функции DateSerial:

DateSerial (Год, Месяц, День), где:

  • Год - целое число от 100 до 9999, представляющее год.
  • Месяц - целое число, представляющее месяц.
  • День - целое число, представляющее день.

В следующем коде показано, как использовать функцию DateSerial:

123456789 Sub UsingTheDateSerialFunction ()Уменьшить дату как датуtheDate = DateSerial (2010, 11, 10)Отладка. Распечатать датуКонец подписки

Результат:

Функция VBA DateValue

Функция DateValue возвращает дату, когда ей дано строковое представление даты.

Синтаксис функции DateValue:

DateValue (Дата) где:

  • Дата - строка, представляющая дату.

В следующем коде показано, как использовать функцию DateValue:

123456789 Sub UsingTheDateValueFunction ()Уменьшить дату как датуtheDate = DateValue ("29 октября 2010 г.")Отладка. Распечатать датуКонец подписки

Результат:

Функция дня VBA

Вы можете использовать функцию дня, чтобы вернуть день введенной даты.

Синтаксис функции дня:

День (Date_value), где:

  • Date_value - дата, из которой вы хотите извлечь день.

В следующем коде показано, как использовать функцию дня:

123456789 Sub UsingTheDayFunction ()Dim theDay As IntegertheDay = День ("12.10.2010")Отладка. Распечатать деньКонец подписки

Результат:

Функция часов VBA

Вы можете использовать функцию Hour, чтобы вернуть час введенного времени.

Синтаксис функции часов:

Час (Время), где:

  • Время - время, из которого вы хотите извлечь час.

В следующем коде показано, как использовать функцию часов:

123456789 Sub UsingTheHourFunction ()Уменьшить значение часа как целоеtheHour = Час ("2:14:17 AM")Отладка. Распечатать часКонец подписки

Результат:

Функция минут VBA

Вы можете использовать функцию Minute, чтобы вернуть значение минут для времени ввода.

Синтаксис функции минут:

Минута (время), где:

  • Время - время, из которого вы хотите извлечь значение минут.

В следующем коде показано, как использовать функцию минут:

123456789 Sub UsingTheMinuteFunction ()Уменьшите значение theMinuteValue как целое числоtheMinuteValue = Минута ("2:14:17 AM")Debug.Print theMinuteValueКонец подписки

Результат:

Вторая функция VBA

Вы можете использовать вторую функцию, чтобы вернуть второе значение времени ввода.

Синтаксис второй функции:

Второй (Время), где:

  • Время - время, из которого вы хотите извлечь второе значение.

В следующем коде показано, как использовать вторую функцию:

123456789 Sub UsingTheSecondFunction ()Уменьшите значение theSecondValue как целое числоtheSecondValue = Second ("2:14:17 AM")Debug.Print theSecondValueКонец подписки

Результат:

Функция месяца VBA

Вы можете использовать функцию «Месяц», чтобы вернуть месяц даты ввода.

Синтаксис функции месяца:

Месяц (Date_value) где:

  • Date_value - дата, из которой вы хотите извлечь месяц.

В следующем коде показано, как использовать функцию месяца:

12345678 Sub UsingTheMonthFunction ()Dim theMonth As IntegertheMonth = Месяц ("18.11.2010")Отладка. Распечатать месяцКонец подписки

Результат:

Функция VBA MonthName

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

Синтаксис функции MonthName:

MonthName (Number_of_month, [Abbreviate]) где:

  • Number_of_month - целое число от 1 до 12.
  • Сократить (По желанию) - указывает, следует ли сокращать название месяца. Если пусто, используется значение по умолчанию False.
12345678 Sub UsingTheMonthNameFunction ()Уменьшите значение имени месяца как строкиtheMonthName = имя месяца (12, верно)Debug.Print theMonthNameКонец подписки

Результат:

Функция VBA TimeSerial

Функция TimeSerial принимает введенные часы, минуты и секунды и возвращает время.

Синтаксис функции TimeSerial:

TimeSerial (час, минута, секунда), где:

  • Час - целое число от 0 до 23, представляющее значение часа.
  • Минута - целое число от 0 до 59, представляющее значение минуты.
  • Второе - целое число от 0 до 59, представляющее второе значение.

В следующем коде показано, как использовать функцию TimeSerial:

12345678 Sub UsingTheTimeSerialFunction ()Уменьшить время как датуtheTime = TimeSerial (1, 10, 15)Отладка. Распечатать времяКонец подписки

Результат:

Функция VBA TimeValue

Функция TimeValue возвращает время из строкового представления даты или времени.

Синтаксис функции TimeValue:

TimeValue (Время), где:

  • Время - Строка, представляющая время.

В следующем коде показано, как использовать функцию TimeValue:

12345678 Sub UsingTheTimeValueFunction ()Уменьшить время как датуtheTime = TimeValue ("22:10:17")Отладка. Распечатать времяКонец подписки

Результат:

Функция буднего дня VBA

Вы можете использовать функцию дня недели, чтобы вернуть целое число от 1 до 7, представляющее день недели из введенной даты.

Синтаксис функции буднего дня:

День недели (Date, [Firstdayofweek]), где:

  • Дата - дата, из которой вы хотите извлечь значение дня недели.
  • Первый день недели (По желанию) - константа, указывающая день недели, который функция должна использовать в качестве первого дня недели. Если пусто, то воскресенье используется как первый день недели. Firstdayofweek может быть одним из следующих значений:

-vbSunday - использовать воскресенье как первый день недели.
-vbMonday - использовать понедельник как первый день недели.
-vbTuesday - вторник используется в качестве первого дня недели.
-vbWednesday - среда как первый день недели.
-vbThursday - использует четверг как первый день недели.
-vbFriday - использовать пятницу как первый день недели.
-vbSaturday - использовать субботу как первый день недели.
-vbUseSystemDayOfTheWeek - использует первый день недели, указанный в настройках вашей системы.

В следующем коде показано, как использовать функцию дня недели:

1234567 Sub UsingTheWeekdayFunction ()Dim theWeekDay as IntegertheWeekDay = будний день («20.11.2019»)Debug.Print theWeekDayКонец подписки

Результат:

Функция VBA WeekdayName

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

Синтаксис функции WeekdayName:

WeekdayName (Weekday, [Abbreviate], [Firstdayoftheweek]), где:

  • День недели - целое число от 1 до 7.
  • Сократить (По желанию) -Указывает, следует ли сокращать название дня недели. Если пусто, используется значение по умолчанию False.
  • Первый день недели (По желанию) - константа, указывающая день недели, который функция должна использовать в качестве первого дня недели. Если пусто, то воскресенье используется как первый день недели. Firstdayofweek может быть одним из следующих значений:

-vbSunday - использовать воскресенье как первый день недели.
-vbMonday - использовать понедельник как первый день недели.
-vbTuesday - вторник используется как первый день недели.
-vbWednesday - среда как первый день недели.
-vbThursday - использует четверг как первый день недели.
-vbFriday - использовать пятницу как первый день недели.
-vbSaturday - использовать субботу как первый день недели.
-vbUseSystemDayOfTheWeek - использует первый день недели, указанный в настройках вашей системы.

12345678 Sub UsingTheWeekdayNameFunction ()Уменьшите цвет WeekdayName как строкуtheWeekdayName = Название дня недели (4)Debug.Print theWeekdayNameКонец подписки

Результат:

Функция года VBA

Вы можете использовать функцию Year, чтобы вернуть год даты ввода.

Синтаксис функции года:

Год (Date_value) где:

  • Date_value - дата, из которой вы хотите извлечь год.

В следующем коде показано, как использовать функцию года:

12345678 Sub UsingTheYearFunction ()Уменьшить год как целое числоtheYear = Год ("11/12/2010")Отладка. Распечатать годКонец подписки

Результат:

Сравнение дат в VBA

Вы можете сравнивать даты с помощью операторов>, <и = в VBA. В следующем коде показано, как сравнить две даты в VBA.

12345678910111213141516171819 Sub ComparingDates ()Тусклая дата Один как ДатаТусклая дата: два как датаdateOne = "10.10.2010"dateTwo = "11.11.2010"Если dateOne> dateTwo ТогдаDebug.Print "dateOne - более поздняя дата"ElseIf dateOne = dateTwo ТогдаDebug.Print "Две даты равны"ЕщеDebug.Print "dateTwo - более поздняя дата"Конец, еслиКонец подписки

Узнайте больше о том, как форматировать даты как строки, просмотрев это руководство.

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave