Функції дати VBA

Зміст

У цьому підручнику ми збираємося пройти через різні вбудовані функції дати VBA.

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

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

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

Наступний код показує, як використовувати функцію дати:

12345678 Додаткове використанняTheDateFunction ()Затемніть дату як датуtheDate = Date ()Налагодження.Надрукуйте датуEnd Sub

Результат такий:

Функція VBA зараз

Ви можете використовувати функцію Now для повернення поточної дати та часу.

Синтаксис функції Now - Now (). У ньому немає аргументів.

Наступний код показує, як використовувати функцію Now:

12345678 Додаткове використанняTheNowFunction ()Затемніть дату як датуtheDate = Зараз ()Налагодження.Надрукуйте датуEnd Sub

Результат такий:

Функція VBA Time

Ви можете використовувати функцію часу, щоб повернути поточний час.

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

Наступний код показує, як використовувати функцію часу:

12345678 Додаткове використанняTheTimeFunction ()Затемніть час як датуtheTime = Час ()Налагодження.Надрукуйте часEnd Sub

Результат такий:

Функція додавання дати VBA

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

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

DateAdd (Інтервал, Номер, Дата), де:

  • Інтервал - рядок, який визначає тип інтервалу для використання. Інтервал може бути одним із таких значень:

"D" - день
"Ww" - тиждень
"W" - будній день
"M" - місяць
“Q” - квартал
"Рррр" - рік
"Y" - день у році
"H" - година
“N” - хвилина
"S" - другий

  • Номер - кількість інтервалів, які потрібно додати до початкової дати/часу.
  • Дата - початкова дата/час.

Примітка: При використанні дат у вашому коді ви повинні оточити їх # або лапками.

Наступний код показує, як використовувати функцію DateAdd:

123456789 Додаткове використанняTheDateAddFunction ()Затемнити пізніше Дата як датаlaterDate = DateAdd ("m", 10, "11/12/2019")Налагодження.Надрукувати пізнішеДатаEnd Sub

Результат такий:

Функція VBA DateDiff

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

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

DateDiff (Інтервал, Дата1, Дата2, [Перший день тижня], [Перший тиждень]) де:

  • Інтервал - рядок, який визначає тип інтервалу для використання. Інтервал може бути одним із таких значень:

"D" - день
"Ww" - тиждень
"W" - будній день
"M" - місяць
“Q” - квартал
"Рррр" - рік
"Y" - день у році
"H" - година
“N” - хвилина
"S" - другий

  • Дата1 - значення дати, що представляє більш ранню дату.
  • Date2 - значення дати, що представляє пізнішу дату.
  • Перший день тижня (Необов’язково) - Константа, яка визначає день тижня, який функція повинна використовувати як перший день тижня. Якщо чиста неділя використовується як перший день тижня. Перший день тижня може бути одним із таких значень:

-vbSunday - використовує неділю як перший день тижня.
-vbMonday - використовує понеділок як перший день тижня.
-vbTuesday - використовує вівторок як перший день тижня.
-vbWednesday - використовує середу як перший день тижня.
-vbThursday - використовує четвер як перший день тижня.
-vbFriday - використовує п’ятницю як перший день тижня.
-vbСубота - використовує суботу як перший день тижня.
-vbUseSystemDayOfTheWeek - використовує перший день тижня, який визначається налаштуваннями вашої системи.

  • Перше тиждень (Необов’язково) - Константа, яка визначає перший тиждень року. Якщо пусто, то тиждень 1 січня використовується як перший тиждень року. Перший тиждень може бути одним із таких значень:

-vbFirstJan1 - використовує тиждень, що містить 1 січня.
-vbFirstFourDays - використовує перший тиждень, що містить щонайменше чотири дні у новому році.
-vbFirstFullWeek - використовує перший повний тиждень у році.
-vbSystem - використовує перший тиждень року відповідно до налаштувань системи.

Наступний код показує, як використовувати функцію DateDiff:

123456789 Додаткове використанняTheDateDiffFunction ()Пригадуйте різницю між двома датами надовгоtheDifferenceBetweenTwoDates = DateDiff ("q", "11/11/2010", "10/12/2012")Налагодження. Надрукуйте різницю між двома датамиEnd Sub

Результат такий:

Функція VBA DatePart

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

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

Частина дати (Інтервал, Дата, [Перший день тижня], [Перший тиждень року]) де:

  • Інтервал - рядок, який визначає частину дати для повернення. Інтервал може бути одним із таких значень:

"D" - день
"Ww" - тиждень
"W" - будній день
"M" - місяць
“Q” - квартал
"Рррр" - рік
"Y" - день у році
"H" - година
“N” - хвилина
"S" - другий

  • Дата - дата, з якої потрібно повернути частину функції.
  • Перший день тижня (Необов’язково) - Константа, яка визначає день тижня, який функція повинна використовувати як перший день тижня. Якщо чиста неділя використовується як перший день тижня. Перший день тижня може бути одним із таких значень:

-vbSunday - використовує неділю як перший день тижня.
-vbMonday - використовує понеділок як перший день тижня.
-vbTuesday - використовує вівторок як перший день тижня.
-vbWednesday - використовує середу як перший день тижня.
-vbThursday - використовує четвер як перший день тижня.
-vbFriday - використовує п’ятницю як перший день тижня.
-vbСубота - використовує суботу як перший день тижня.
-vbUseSystemDayOfTheWeek - використовує перший день тижня, який визначається налаштуваннями вашої системи.

  • Перше тиждень (Необов’язково) - Константа, яка визначає перший тиждень року. Якщо пропущено, то тиждень 1 січня використовується як перший тиждень року. Перший тиждень може бути одним із таких значень:

-vbFirstJan1 - використовує тиждень, що містить 1 січня.
-vbFirstFourDays - використовує перший тиждень, що містить щонайменше чотири дні у новому році.
-vbFirstFullWeek - використовує перший повний тиждень у році.
-vbSystem - використовує перший тиждень року відповідно до налаштувань системи.

Наступний код показує, як використовувати функцію DatePart:

123456789 Додаткове використанняTheDatePartFunction ()Затемніть частину дати як ціле числоthePartOfTheDate = DatePart ("рррр", "12/12/2009")Налагодження.Надрукуйте частинуДатаEnd Sub

Результат такий:

Функція VBA DateSerial

Функція VBA DateSerial приймає введення року, місяця та дня та повертає дату.

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

DateSerial (рік, місяць, день) де:

  • Рік - ціле число від 100 до 9999, що представляє рік.
  • Місяць - ціле число, що представляє місяць.
  • День - ціле число, що представляє день.

Наступний код показує, як використовувати функцію DateSerial:

123456789 Додаткове використанняTheDateSerialFunction ()Затемніть дату як датуtheDate = DateSerial (2010, 11, 10)Налагодження.Надрукуйте датуEnd Sub

Результат такий:

Функція VBA DateValue

Функція DateValue повертає Date, коли їй надано рядкове представлення дати.

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

DateValue (Дата) де:

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

Наступний код показує, як використовувати функцію DateValue:

123456789 Додаткове використанняTheDateValueFunction ()Затемніть дату як датуtheDate = DateValue ("29 жовтня 2010 р.")Налагодження.Надрукуйте датуEnd Sub

Результат такий:

Функція VBA Day

Ви можете використовувати функцію «День», щоб повернути день введення дати.

Синтаксис функції Day такий:

День (Date_value), де:

  • Date_value - Дата, з якої потрібно виділити день.

Наступний код показує, як користуватися функцією "День":

123456789 Додаткове використанняTheDayFunction ()Затемніть день як ціле числоtheDay = Day ("10/12/2010")Налагодження. Друк дняEnd Sub

Результат такий:

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

Ви можете використовувати функцію Година, щоб повернути годину введеного часу.

Синтаксис функції Година такий:

Година (час) де:

  • Час - час, з якого потрібно виділити годину.

Наступний код показує, як використовувати функцію Година:

123456789 Додаткове використанняTheHourFunction ()Затемніть годину як ціле числоtheHour = Hour ("2:14:17 AM")Налагодження.Надрукуйте годинуEnd Sub

Результат такий:

Функція VBA Minute

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

Синтаксис функції хвилини такий:

Хвилина (час) де:

  • Час - час, з якого потрібно витягти значення хвилини.

Наступний код показує, як використовувати функцію хвилини:

123456789 Додаткове використанняTheMinuteFunction ()Затемніть значення MinuteValue як ціле числоtheMinuteValue = Хвилина ("2:14:17 AM")Налагодження.Надрукуйте MinuteValueEnd Sub

Результат такий:

Друга функція VBA

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

Синтаксис другої функції такий:

Другий (час) де:

  • Час - час, з якого потрібно витягнути друге значення.

Наступний код показує, як використовувати Другу функцію:

123456789 Додаткове використанняTheSecondFunction ()Затемніть друге значення як ціле числоtheSecondValue = Second ("2:14:17 AM")Налагодження.Надрукуйте друге значенняEnd Sub

Результат такий:

Функція місяця VBA

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

Синтаксис функції місяця такий:

Місяць (Date_value) де:

  • Date_value - Дата, з якої потрібно витягнути місяць.

Наступний код показує, як використовувати функцію місяця:

12345678 Додаткове використанняTheMonthFunction ()Затемніть місяць як ціле числоtheMonth = Month ("18.11.2010")Налагодження.Надрукуйте місяцьEnd Sub

Результат такий:

Функція імені місяця VBA

Ви можете використовувати функцію «Назва місяця», щоб повернути назву місяця з введеного номера місяця.

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

Назва місяця (Кількість_місяця, [Скоротити]) де:

  • Число_місяця - ціле число від 1 до 12.
  • Скоротіть (Необов’язково) - Вказує, чи слід скорочувати назву місяця. Якщо пусто, використовується значення за замовчуванням False.
12345678 Додаткове використанняTheMonthNameFunction ()Затемніть ім'я місяця як рядокtheMonthName = Назва місяця (12, Істина)Налагодження.НадрукуйтеMonthNameEnd Sub

Результат такий:

Функція VBA TimeSerial

Функція TimeSerial приймає години введення, хвилини та секунди та повертає час.

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

TimeSerial (Година, Хвилина, Секунда) де:

  • Година - ціле число від 0 до 23, що представляє значення години.
  • Хвилина - ціле число від 0 до 59, що представляє значення хвилини.
  • Друге - ціле значення від 0 до 59, що представляє друге значення.

Наступний код показує, як використовувати функцію TimeSerial:

12345678 Додаткове використанняTheTimeSerialFunction ()Затемніть час як датуtheTime = TimeSerial (1, 10, 15)Налагодження.Надрукуйте часEnd Sub

Результат такий:

Функція VBA TimeValue

Функція TimeValue повертає час із рядкового представлення дати чи часу.

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

TimeValue (Час), де:

  • Час - рядок, що представляє час.

Наступний код показує, як використовувати функцію TimeValue:

12345678 Додаткове використанняTheTimeValueFunction ()Затемніть час як датуtheTime = TimeValue ("22:10:17")Налагодження.Надрукуйте часEnd Sub

Результат такий:

Функція будня VBA

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

Синтаксис функції тижня:

День тижня (дата, [перший день тижня]), де:

  • Дата - дата, з якої потрібно витягти значення дня тижня.
  • Перший день тижня (Необов’язково) - Константа, яка визначає день тижня, який функція повинна використовувати як перший день тижня. Якщо чиста неділя використовується як перший день тижня. Перший день тижня може бути одним із таких значень:

-vbSunday - використовує неділю як перший день тижня.
-vbMonday - використовує понеділок як перший день тижня.
-vbTuesday - використовує вівторок як перший день тижня.
-vbWednesday - використовує середу як перший день тижня.
-vbThursday - використовує четвер як перший день тижня.
-vbFriday - використовує п’ятницю як перший день тижня.
-vbСубота - використовує суботу як перший день тижня.
-vbUseSystemDayOfTheWeek - використовує перший день тижня, який визначається налаштуваннями вашої системи.

Наступний код показує, як користуватися функцією «Будній день»:

1234567 Додаткове використанняWeekdayFunction ()Затемніть тижневий день як ціле числоtheWeekDay = Будній день ("20.11.2019")Налагодження. Надрукуйте тижденьEnd Sub

Результат такий:

Функція VBA WeekdayName

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

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

WeekdayName (День тижня, [Скоротити], [Перший день тижня]) де:

  • День тижня - ціле число від 1 до 7.
  • Скоротіть (Необов’язково) -Вказує, чи слід скорочувати назву дня тижня. Якщо пусто, використовується значення за замовчуванням False.
  • Перший день тижня (Необов’язково) - Константа, яка визначає день тижня, який функція повинна використовувати як перший день тижня. Якщо чиста неділя використовується як перший день тижня. Перший день тижня може бути одним із таких значень:

-vbSunday - використовує неділю як перший день тижня.
-vbMonday - використовує понеділок як перший день тижня.
-vbTuesday - використовує вівторок як перший день тижня.
-vbWednesday - використовує середу як перший день тижня.
-vbThursday - використовує четвер як перший день тижня.
-vbFriday - використовує п’ятницю як перший день тижня.
-vbСубота - використовує суботу як перший день тижня.
-vbUseSystemDayOfTheWeek - використовує перший день тижня, який визначається налаштуваннями вашої системи.

12345678 Додаткове використанняTheWeekdayNameFunction ()Затемніть ім’я вихідного дня як рядокtheWeekdayName = Назва дня тижня (4)Налагодження.НадрукуйтеНазва вихідного дняEnd Sub

Результат такий:

Річна функція VBA

Ви можете використовувати функцію року, щоб повернути рік дати введення.

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

Рік (Date_value) де:

  • Date_value - Дата, з якої потрібно витягнути рік.

Наступний код показує, як використовувати функцію Рік:

12345678 Додаткове використанняYearFunction ()Затемніть рік як ціле числорік = рік ("11/12/2010")Налагодження.Надрукуйте рікEnd Sub

Результат такий:

Порівняння дат у VBA

Ви можете порівняти дати за допомогою операторів>, <і = у VBA. Наступний код показує, як порівняти дві дати у VBA.

12345678910111213141516171819 Дані порівняння ()Затемнити дату Один як датаЗатемнити дату Два як датуdateOne = "10.10.2010"dateTwo = "11.11.2010"Якщо dateOne> dateTwo ТодіDebug.Print "dateOne is the later date"ElseIf dateOne = dateTwo ТодіDebug.Print "Дві дати рівні"ІнакшеDebug.Print "dateTwo is the later date"Закінчити ЯкщоEnd Sub

Щоб дізнатися більше про те, як відформатувати дати як рядки, перегляньте цей підручник.

wave wave wave wave wave