EXCEL

Excel vba работа с датами

Автор
Ненашев А.
На чтение
5-10 минут
Дата обновления
11.07.2024
Старт:c 12 февраля
Срок обучения:0 месяцев
Excel и Google-таблицы для управления финансами
Курс «Excel и Google-таблицы для управления финансами» поможет вам освоить востребованные инструменты для эффективного контроля и анализа личных или бизнес-финансов. Вы получите практические навыки автоматизации расчётов и построения финансовых отчётов, научитесь визуализировать данные для принятия верных решений. Вас ждут реальные кейсы, задания для портфолио, поддержка экспертов и сертификат по итогам обучения!
Подробнее
36 000 ₽ 72 000 ₽
3 000 ₽/мес рассрочка

Функции для работы с датой и временем

Функции даты / времени VBA, функции Date (), Time (), DateAdd (), DateDiff (), DatePart (), DateSerial (), Timer()

Без функций даты и времени обычно просто невозможно обойтись. Наиболее важные функции VBA для работы с датой / временем:

  • Date () — возвращает текущую системную дату. Вы можете установить его с помощью одноименного оператора, например, так:
  • Time () возвращает текущее системное время, а Now () возвращает дату и время вместе.
  • DateAdd () — возможность добавлять к дате указанное количество лет, кварталов, месяцев и т.д. — до секунд.
  • DateDiff () — возможность получить разницу между датами (опять же, в единицах от лет до секунд).
  • DatePart () — очень важная функция, которая возвращает указанную часть даты (например, только год, только месяц или только день недели).
  • DateSerial () — возможность создавать значение даты на основе переданных символьных значений. DateValue () делает то же самое, различия заключаются в формате получаемых значений. TimeSerial () и TimeValue () работают аналогично (для time().
  • Day () (в дополнение к Year (), Month (), Weekday (), Hour (), Minute (), Second ()) являются специализированными заполнителями для функции DatePart (), которые возвращают желаемую часть даты.
  • MonthName () — возвращает название месяца буквами в зависимости от его номера. Возвращаемое значение зависит от языкового стандарта. Если они русские, будет возвращено русское название месяца.
  • Timer () — возвращает количество секунд с полуночи.

Если вам нужны более продвинутые функции даты и времени, в вашем распоряжении объектная модель Outlook. Например, с его помощью можно получить информацию о праздничных и рабочих / нерабочих днях в большинстве стран мира. Подробнее — в соответствующем разделе.

Excel vba работа с датами

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

VBA предоставляет следующие функции времени и даты.

  • Дата: возвращает вариант (дату), содержащий текущую системную дату.

Время: возвращает вариант (дату), содержащий текущее время по системным часам компьютера.

Время: возвращает вариант (дату), содержащий текущую дату и время на основе системного календаря и часов компьютера.

Hour, Minute, Second — возврат значений Variant (Integer), содержащих целое число, представляющее часы, минуты и секунды в значении времени. Синтаксис:

  • время — это значение времени или выражение, которое его определяет.

В следующем примере переменная установлена ​​на 16 часов, 35 минут и 17 секунд:

  • data — значение даты или выражение, которое его определяет.

В следующем примере переменной присвоено 17 День, Месяц — Май, Год — 1960:

  • дата — это выражение, представляющее дату;
  • firstdayofweek — указывает первый день недели. Если этот аргумент опущен, предполагается vbSunday (воскресенье). Допустимые значения: vbMonday (понедельник), vbTuesday (вторник), vbWednesday (среда), vbThursday (четверг), vbFriday (пятница) и vbSaturday (суббота).

В следующем примере для переменной DayWeek установлено значение 3, то есть вторник:

DateDiff: возвращает вариант (Long), указывающий количество временных интервалов между двумя датами. Синтаксис:

В следующем примере переменной LivedMonthsWithBirth присваивается 642:

В следующем примере переменной назначается День 3/17/63:

В этом примере переменной Tempo присвоено 16:35:17:

В следующем примере переменной Date назначается дата 17.05.60:

На следующем этапе мы рассмотрим функции выбора.

VBA — функции работы с датой и временем

Итак, в этой естественно скучной публикации я кратко рассмотрю функции даты и времени vba, которые позволяют вам получать или устанавливать параметры даты и времени, устанавливать таймер для выполнения определенного блока кода или одного скрипта в целом. Также в конце статьи будет затронута функция языка форматирования vba. Которая отвечает за форматирование данных.

Функции VBA даты и времени

Date () — получить текущее значение даты, установленное в системе.

Time () — вернет время, установленное в системе

Now () — это комбинированная функция, поскольку она получает значение системной даты и времени.

DateAdd (интервал, число, дата) — добавляет указанное количество лет, кварталов, месяцев или секунд к указанной дате (параметр «дата»). На выходе получаем следующее значение: дата + (число * диапазон).

DateDiff (range, date, date2) — получить, например, разницу между заданными датами. В годах, месяцах и т.д. Разница определяется параметром «интервал”.

DatePart (диапазон, дата): получает указанную часть даты, например, только год, месяц или день недели. Результат возврата регулируется параметром «интервал”.

DateSerial (год, месяц, день): эта функция vba принимает три числовых значения, на основе которых возвращается дата.

DateValue (строка) является аналогом предыдущей функции, но мы не передаем здесь числа в качестве параметра. А строковое значение, по которому будет возвращена дата, vba работает с датами.

День: получает значение текущего дня (если параметр «дата» не указан) или для определенной даты.

Год: получает значение текущего года (если параметр «дата» не указан) или для определенной даты.

Месяц: получает значение текущего месяца (если параметр «дата» не указан) или для определенной даты.

Weekday (date) — получает значение текущей недели (если параметр «date» отсутствует) или для определенной даты.

Hour (время) — получает текущее значение часа (если параметр «время» отсутствует) или для определенного времени, даты и времени vba.

Минута: получает текущее значение минут (если параметр «время» отсутствует) или за определенное время.

Секунда (время): получает текущее значение в секундах (если параметр «время» отсутствует) или за указанное время.

Timer () — удобная функция для определения количества времени, необходимого для выполнения заданного блока кода. Сама функция возвращает целое число секунд, прошедших с полуночи.

TimeSerial (часы, минуты, секунды): получает время, указанное тремя параметрами

TimeValue (строка): работает аналогично предыдущей функции, но для получения времени передается не целочисленное значение, а строка.

MonthName (числовое значение) — функция VBA позволяет получить название месяца, в качестве параметра мы указываем номер месяца.

WeekDay (date) — set возвращает название месяца буквами в зависимости от его номера. Возвращаемое значение зависит от языкового стандарта. Если они русские, будет возвращено русское название месяца.

В дополнение к указанным выше функциям даты и времени vba вы можете использовать следующие варианты:

Дата: установка системной даты

Время: установите системное время.

Функции даты и времени vba в указанном выше языке используют параметр «interval», который может принимать следующие значения:

VBA функции форматирование данных

Для форматирования данных в VBA используется функция Format, которая позволяет формировать данные любого встроенного типа по заданному шаблону. Общий синтаксис функции форматирования:

Формат (Выражение, «формат», [первы]й день недели, [первая недел[я года]]) — здесь параметр «выражение» — любое допустимое значение. Формат — необязательный параметр, указывающий формат данных, должен быть заключен в кавычки. Два других параметра также являются необязательными и задают первый день недели и первую неделю года.

Параметр формата может принимать следующие значения:

  • Общее число — это числовое значение без выделения тысяч позиций, например 12150,2003
  • Валюта — формат валюты, присваиваются тысячные и два десятичных знака, например 255,33 рубля.
  • Исправлено: числовое значение без разделения тысяч разрядов и двух десятичных знаков, например 22439.12.
  • Стандарт: числовое значение, умноженное на 100, оставляя два десятичных знака и символ процента, например 55,63%.
  • Научный: числовой формат для научных вычислений, например 5.23E + 03
  • Да / Нет: этот параметр определяет, что функция вернет «Да», если форматированное выражение содержит строку «Нет» или ненулевое значение, и «Нет» в противном случае.
  • True / False — аналогично предыдущему параметру, но для строк «True» и «False”.
  • Вкл / Выкл — для линий типа «Вкл» и «Выкл”.
  • Общая дата: форматирование выражения в соответствии с установленными стандартами даты и времени, например 10.11.02 12:25:50
  • Длинная дата — отображает полный формат даты, в зависимости от настроек в системе, например 10 октября 2013 года, функция даты vba.
  • Средняя дата: формат средней даты, например 10-окт-13.
  • Краткая дата — вывод в кратком формате даты, например 10.10.13.
  • Long Time — вывод в формате времени (часы, минуты, секунды), например 12:20:40.
  • Среднее время: 12-часовой формат времени (часы, минуты), например 05:30.
  • Краткое время: 24-часовой формат времени (часы, минуты), например 17:30

Курсы

83859
0,0
0 отзывов
Excel и Google-таблицы для бухгалтеров
84675
5,0
4 отзыва
Excel: с 0 до PRO
  • 4 месяца
  • Смешанный
  • Сертификат
40 700 ₽
3 670 ₽/мес рассрочка
Перейти на сайт
27365
0,0
0 отзывов
Excel: простые шаги для оптимизации работы с данными