Datevalue excel на русском

Access для Microsoft 365 Access 2021 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Еще…Меньше

Возвращает значение типа Variant (Date).

Синтаксис

DateValue
(

дата

)

Требуемая датааргумент обычно представляет собой строковое выражение, представляющую дату с 1 января 100 по 31 декабря 9999 года. Однако датой также может быть любой выражение, который может представлять дату, время или дату и время в этом диапазоне.

Замечания

Если date — это строка, которая содержит только числа, разделенные допустимыми разделители даты, dateValue распознает порядок для месяца, дня и года в соответствии с форматом короткой даты, указанным в системе. DateValue также распознает однозначные даты, содержащие названия месяцев в длинной или сокращенной форме. Например, в дополнение к признанию 30.12.1991 и 30.12.91 , DateValue также признает 30 декабря 1991 г. и 30 декабря 1991 г.

Если в аргументе дата год опущен, DateValue использует текущий год из системной даты компьютера.

Если аргумент дата включает данные о времени, DateValue не возвращает их. Однако если дата включает недопустимые данные о времени (например, «89:98»), возникает ошибка.

Примечание: Если в свойстве Calendar задан григорианский календарь, аргумент дата следует указывать соответствующим образом. Если используется календарь Хиджра, дата должна соответствовать ему. Если дата указана по календарю Хиджра, аргумент дата является переменной String, представляющей дату с 01.01.100 (2 августа 718 года по григорианскому календарю) по 03.04.9666 (31 декабря 9999 года по григорианскому календарю).

Примеры запросов


Expression


Результаты

SELECT DateValue([DateTime]) AS Expr1 FROM ProductSales;

Возвращает значения даты поля «DateTime» в формате «Короткая дата» без сведений о времени.

SELECT DateValue([DateTime]) AS NewDate, Count(ProductSales.DateTime) AS CountOfDateTime FROM ProductSales GROUP BY DateValue([DateTime]);

Возвращает значения даты поля «DateTime» в формате «Короткая дата» без сведений о времени.

Пример VBA

Примечание: В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Чтобы получить дополнительные сведения о работе с VBA, выберите Справочник разработчика в раскрывающемся списке рядом с полем Поиск и введите одно или несколько слов в поле поиска.

В этом примере функция DateValue используется для преобразования строки в дату. Вы также можете использовать литералы даты, чтобы непосредственно назначить дату переменной типа Variant или Date, например MyDate = #12/2/69#.

Dim MyDate
MyDate = DateValue("February 12, 1969") ' Return a date.

Нужна дополнительная помощь?

Функция DATEVALUE (ДАТАЗНАЧ) в Excel используется для тех ситуаций, когда дата в ячейке указана в виде текста. С её помощью Excel конвертирует текстовое значение даты в число, которое система распознает как дату.

Содержание

  1. Какие данные отображает
  2. Синтаксис
  3. Аргументы
  4. Дополнительная информация
  5. Примеры использования функции DATEVALUE (ДАТАЗНАЧ)
  6. Пример №1. Преобразование даты в текстовом формате в число
  7. Пример №2. Преобразование даты в текстовом формате с помощью формулы
  8. Пример №3. Использование функции без указания года
  9. Пример №4. Использование функции без указания дня

Какие данные отображает

Функция возвращает дату в виде числового значения, понятного по формату для Excel. Например, если мы используем функцию =DATEVALUE («1/1/2016») или =ДАТАЗНАЧ(«1/1/2016») , она будет возвращать число 42370, которое является числовым значением даты 01-01-2016.

Синтаксис

=DATEVALUE (“date_text”) — английская версия
=ДАТАЗНАЧ («дата_как_текст»)
— русская версия

Аргументы

date_text (дата_как_текст): это аргумент даты указанной в ячейке в формате текста или результат какой-либо формулы в виде текста;

  • для правильной работы функции, текст, который нам необходимо преобразовать в формулу важно указать в кавычках (прим. “01/01/2016”);
  • если date_text это результат какого-либо вычисления, важно чтобы ячейка была в текстовом формате, для корректной работы функции.

Дополнительная информация

DATEVALUE (ДАТАЗНАЧ) возвращает числовое значение даты:

  • Например: формула =DATEVALUE(“1/1/2014”) или =ДАТАЗНАЧ(“1/1/2014”) преобразует значение в число 41640, которое означает дату 1 января 2014 в формате даты.
  • Если вы указываете дату без дня (прим. =DATEVALUE(“1/2014”) или =ДАТАЗНАЧ(“1/1/2014”), а только месяц и год, система вернет числовое значение даты как первого дня указанного месяца — 41640, что для Excel будет означать как 01.01.2014.
  • Если вы не используете значение года (прим. =DATEVALUE(“01/04”) или =ДАТАЗНАЧ(“01/04”), Excel автоматически присвоит текущий год (указанный в настройках даты и времени вашей ОС).
  • Формат значения даты, которую выдает функция, зависит от настроек вашей ОС. Например в России (по умолчанию) при преобразовании даты 01/03/2016 это будет 1 Марта 2016, в США это 3 Января 2016.

Примеры использования функции DATEVALUE (ДАТАЗНАЧ)

Пример №1. Преобразование даты в текстовом формате в число

Функция в Excel - DATAVALUE (ДАТАЗНАЧ)

В приведенном выше примере, формула возвращает числовое значение даты введенной в кавычках. Введенная дата должна быть в текстовом формате, иначе Excel возвращает “#VALUE!” ошибку.

Обратите внимание, что значение, возвращаемое функцией зависит от настройки часов вашей системы. Если дата указана в формате ДД-ММ-ГГГГ значит «01-06-2016» будет отображать как 1 июня 2016 года, но для формата даты ММ-ДД-ГГГГ дата будет отображаться как 6 января 2016.

Telegram Logo Больше лайфхаков в нашем Telegram Подписаться

Пример №2. Преобразование даты в текстовом формате с помощью формулы

Функция DATEVALUE (ДАТАЗНАЧ)

Когда дата введена как текст в ячейку, вы можете использовать функцию DATAVALUE (ДАТАЗНАЧ), чтобы получить числовое значение даты. Обратите внимание, что дата должна быть в текстовом формате.

В приведенном выше примере, формула преобразует “1-6-16” и “1-июня-16” — это значение указанное в формате даты.

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

Пример №3. Использование функции без указания года

Функция DATAVALUE (ДАТАЗНАЧ) в Excel

Если значение года не указано, то система использует текущий год при отображении значения даты (текущий год 2016 в указанном примере).

Пример №4. Использование функции без указания дня

Функция DATEVALUE (ДАТАЗНАЧ) в Excel

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

В приведенных выше примерах, когда мы вводим число «6-16», система возвращает число 42522, которое является значением даты на 1 июня 2016 года.

Если в вашей ячейке лежит дата в виде текстовой строки, например, «8 март 2013», то для Excel это, естественно, не дата, а текст. Чтобы преобразовать текстовую дату в полноценную (читай – в числовой код даты, т.к. внутри Excel любая дата представлена именно числовым кодом), можно использовать специальную функцию ДАТАЗНАЧ (DATEVALUE). Она умеет превращать в нормальную дату различные текстовые варианты ее написания:

Превращение текстовой даты в полноценную с ДАТАЗНАЧ

Как видно из скриншота, проблемы с преобразованием будут только у англоязычных дат (если у вас установлен русский Excel), с падежами месяцев (ибо их нет в английском языке в принципе) и с совсем уж невнятными цифровыми наборами типа «18 3 17». Со всем остальным эта функция замечательно справляется.

Если для ввода дат была использована не точка или косая черта, а запятая (что часто бывает при использовании дополнительной цифровой клавиатуры), то придется сначала заменить запятую на точку с помощью функции ПОДСТАВИТЬ (SUBSTITUTE) и потом уже использовать функцию ДАТАЗНАЧ для преобразования получившегося текста в реальную дату:

Дата с запятыми

Ссылки по теме

  • Как Excel на самом деле хранит и обрабатывает даты и время
  • Как найти ближайший рабочий день функцией РАБДЕНЬ (WORKDAY)
  • Как вычислить разницу между двумя датами в днях, месяцах или годах

Содержание

  1. Функция DateValue
  2. Синтаксис
  3. Замечания
  4. Пример
  5. См. также
  6. Поддержка и обратная связь
  7. Функция DATEVALUE (ДАТАЗНАЧ) в Excel. Как использовать?
  8. Какие данные отображает
  9. Синтаксис
  10. Аргументы
  11. Дополнительная информация
  12. Примеры использования функции DATEVALUE (ДАТАЗНАЧ)
  13. Пример №1. Преобразование даты в текстовом формате в число
  14. Пример №2. Преобразование даты в текстовом формате с помощью формулы
  15. Пример №3. Использование функции без указания года
  16. Пример №4. Использование функции без указания дня
  17. Преобразование дат из текстового формата в формат даты
  18. Дополнительные сведения
  19. VBA Excel. Функции для работы с датой и временем
  20. Функция Date
  21. Функция DateAdd
  22. Функция DateDiff

Функция DateValue

Возвращает Variant (Date).

Синтаксис

DateValue(date)

Обязательный аргументdate обычно представляет собой строковое выражение, представляющее дату с 1 января 100 г. по 31 декабря 9999 г. Однако date также может быть выражением, представляющим дату, время или и то, и другое в этом диапазоне.

Замечания

Если date — это строка, содержащая только числа, разделенные допустимыми разделителями даты, DateValue распознает порядок для месяца, дня и года в соответствии с форматом Short Date, указанным в системе. DateValue также распознает однозначные даты с названиями месяцев в полной или сокращенной форме. Например, помимо 12/30/1991 и 12/30/91 DateValue также распознает «30 декабря 1991» и «30 дек 1991».

Если часть date с годом опущена, DateValue использует текущий год системной даты вашего компьютера.

Если аргумент date содержит данные о времени, DateValue не возвращает их. Но если date содержит недопустимые данные о времени (например, «89:98»), возникает ошибка.

Если в свойстве Calendar задан григорианский календарь, аргумент дата следует указывать соответствующим образом. Если используется календарь Хиджра, дата должна соответствовать ему. В этом случае аргумент date — это значение типа String, представляющее дату от 1/1/100 (2 августа 718 г. грегорианского календаря) до 4/3/9666 (31 декабря 9999 г. грегорианского календаря).

Пример

В этом примере функция DateValue используется для преобразования строки в дату. Вы также можете использовать литералы даты, чтобы напрямую назначить дату переменной Variant или Date, например MyDate = #2/12/69#.

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Источник

Функция DATEVALUE (ДАТАЗНАЧ) в Excel. Как использовать?

Функция DATEVALUE (ДАТАЗНАЧ) в Excel используется для тех ситуаций, когда дата в ячейке указана в виде текста. С её помощью Excel конвертирует текстовое значение даты в число, которое система распознает как дату.

Какие данные отображает

Функция возвращает дату в виде числового значения, понятного по формату для Excel. Например, если мы используем функцию =DATEVALUE («1/1/2016») или =ДАТАЗНАЧ(«1/1/2016») , она будет возвращать число 42370, которое является числовым значением даты 01-01-2016.

Синтаксис

=DATEVALUE (“date_text”) — английская версия
=ДАТАЗНАЧ («дата_как_текст»)
— русская версия

Аргументы

date_text (дата_как_текст): это аргумент даты указанной в ячейке в формате текста или результат какой-либо формулы в виде текста;

  • для правильной работы функции, текст, который нам необходимо преобразовать в формулу важно указать в кавычках (прим. “01/01/2016”);
  • если date_text это результат какого-либо вычисления, важно чтобы ячейка была в текстовом формате, для корректной работы функции.

Дополнительная информация

DATEVALUE (ДАТАЗНАЧ) возвращает числовое значение даты:

  • Например: формула =DATEVALUE(“1/1/2014”) или =ДАТАЗНАЧ(“1/1/2014”) преобразует значение в число 41640, которое означает дату 1 января 2014 в формате даты.
  • Если вы указываете дату без дня (прим. =DATEVALUE(“1/2014”) или =ДАТАЗНАЧ(“1/1/2014”) , а только месяц и год, система вернет числовое значение даты как первого дня указанного месяца — 41640, что для Excel будет означать как 01.01.2014.
  • Если вы не используете значение года (прим. =DATEVALUE(“01/04”) или =ДАТАЗНАЧ(“01/04”) , Excel автоматически присвоит текущий год (указанный в настройках даты и времени вашей ОС).
  • Формат значения даты, которую выдает функция, зависит от настроек вашей ОС. Например в России (по умолчанию) при преобразовании даты 01/03/2016 это будет 1 Марта 2016, в США это 3 Января 2016.

Примеры использования функции DATEVALUE (ДАТАЗНАЧ)

Пример №1. Преобразование даты в текстовом формате в число

В приведенном выше примере, формула возвращает числовое значение даты введенной в кавычках. Введенная дата должна быть в текстовом формате, иначе Excel возвращает “#VALUE!” ошибку.

Обратите внимание, что значение, возвращаемое функцией зависит от настройки часов вашей системы. Если дата указана в формате ДД-ММ-ГГГГ значит «01-06-2016» будет отображать как 1 июня 2016 года, но для формата даты ММ-ДД-ГГГГ дата будет отображаться как 6 января 2016.

Пример №2. Преобразование даты в текстовом формате с помощью формулы

Когда дата введена как текст в ячейку, вы можете использовать функцию DATAVALUE (ДАТАЗНАЧ) , чтобы получить числовое значение даты. Обратите внимание, что дата должна быть в текстовом формате.

В приведенном выше примере, формула преобразует “1-6-16” и “1-июня-16” — это значение указанное в формате даты.

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

Пример №3. Использование функции без указания года

Если значение года не указано, то система использует текущий год при отображении значения даты (текущий год 2016 в указанном примере).

Пример №4. Использование функции без указания дня

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

В приведенных выше примерах, когда мы вводим число «6-16», система возвращает число 42522, которое является значением даты на 1 июня 2016 года.

Источник

Преобразование дат из текстового формата в формат даты

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

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

Поскольку функция проверки ошибок в Excel распознает даты в текстовом формате с двузначным номером года, можно воспользоваться средством автозамены и преобразовать их в даты в формате даты. Функцию DATEVALUE можно использовать для преобразования большинства других типов текстовых дат в даты.

При импорте данных в Excel из другого источника или при вводе дат с двумя цифрами лет в ячейки, которые ранее были отформатированы как текст, в левом верхнем углу ячейки может появиться небольшой зеленый треугольник. Этот индикатор ошибки указывает на то, что дата хранится в текстовом формате, как показано в данном примере.

Индикатор ошибки можно использовать для преобразования дат из текста в формат даты.

Примечания: Сначала убедитесь, что проверка ошибок включена в Excel. Для этого:

Щелкните Файл > Параметры > Формулы.

В Excel 2007 нажмите кнопку Microsoft Office , а Excel параметры > формул.

В разделе «Проверка ошибок» установите флажок «Включить фоновую проверку ошибок». Все найденные ошибки помечаются треугольником в левом верхнем углу ячейки.

В разделе «Правила проверки ошибок» выберите ячейки, содержащие годы, представленные в виде двух цифр.

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

Выделите ячейку или диапазон смежных ячеек с индикатором ошибки в верхнем левом углу. Дополнительные сведения см. в разделе «Выбор ячеек, диапазонов, строк или столбцов на листе».

Совет: Чтобы отменить выделение ячеек, щелкните любую ячейку на листе.

Нажмите кнопку ошибки, которая отображается рядом с выделенными ячейками.

В меню выберите команду Преобразовать XX в 20XX или Преобразовать XX в 19XX. Если вы хотите закрыть индикатор ошибки без преобразования числа, нажмите кнопку «Пропустить ошибку».

Текстовые даты с двумя цифрами лет преобразуют в стандартные даты с четырехзначными годами.

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

Если на листе есть даты, которые, возможно, были импортированы или вставлены, в итоге выглядят как ряд чисел, как показано на рисунке ниже, вы, вероятно, захотите переформатировать их, чтобы они отображались как короткие или длинные даты. Формат даты также будет полезен, если вы хотите отфильтровать, отсортировать или использовать его в вычислениях дат.

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

Щелкните «Формат номера» и выберите нужный формат даты.

Формат короткой даты выглядит следующим образом:

Длинная дата содержит дополнительные сведения, как на этом рисунке:

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

Выделите пустую ячейку и убедитесь, что ее число имеет формат «Общие».

В пустой ячейке сделайте следующее.

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

Нажмите клавишу ВВОД, и функция DATEVALUE возвращает серийный номер даты, представленной текстовой датой.

Что такое Excel серийный номер?

В Excel даты хранятся в виде порядковых номеров, что позволяет использовать их в вычислениях. По умолчанию 1 января 1900, является серийным номером 1, а 1 января 2008 г. — серийным номером 39448, так как это 39 448 дней после 1 января, 1900.To скопируйте формулу преобразования в диапазон смежных ячеек, выделите ячейку, содержащую введенную формулу, а затем перетащите маркер заполнения по диапазону пустых ячеек, которые соответствуют диапазону ячеек, содержащих текстовые даты.

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

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

Сочетание клавиш: Можно также нажать клавиши CTRL+C.

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

В диалоговом окне Специальная вставка в разделе Вставить выберите параметр Значения и нажмите кнопку ОК.

На вкладке « Главная» щелкните всплывающее окно рядом с пунктом «Число».

В поле Категория выберите пункт Дата, после чего укажите необходимый формат даты в списке Тип.

Чтобы удалить серийные номера после успешного преобразования всех дат, выделите ячейки, содержащие их, и нажмите клавишу DELETE.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Источник

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

Функции для работы с датой и временем в VBA Excel. Синтаксис, параметры, спецсимволы, примеры. Функции, возвращающие текущие дату и время по системному таймеру.

Функция Date

Синтаксис

Пример

Функция DateAdd

Синтаксис

Параметры

Параметр Описание
interval Обязательный параметр. Строковое выражение из спецсимволов, представляющее интервал времени, который требуется добавить.
number Обязательный параметр. Числовое выражение, задающее количество интервалов, которые необходимо добавить. Может быть как положительным (возвращается будущая дата), так и отрицательным (возвращается предыдущая дата).
date Обязательный параметр. Значение типа Variant/Date или литерал, представляющий дату, к которой должен быть добавлен интервал.

Таблицу аргументов (значений) параметра interval смотрите в параграфе «Приложение 1».

Примечание к таблице аргументов: три символа – y, d, w – указывают функции DateAdd на один день, который необходимо прибавить к исходной дате number раз.

Пример

Функция DateDiff

Синтаксис

Параметры

Параметр Описание
interval Обязательный параметр. Строковое выражение из спецсимволов, представляющее интервал времени, количество которых (интервалов) требуется вычислить между двумя датами.
date1, date2 Обязательные параметры. Значения типа Variant/Date , представляющие две даты, между которыми вычисляется количество указанных интервалов.
firstdayofweek Необязательный параметр. Константа, задающая первый день недели. По умолчанию – воскресенье.
firstweekofyear Необязательный параметр. Константа, задающая первую неделю года. По умолчанию – неделя, в которую входит 1 января.

Таблицу аргументов (значений) параметра interval смотрите в параграфе «Приложение 1».

Примечание к таблице аргументов: в отличие от функции DateAdd , в функции DateDiff спецсимвол «w» , как и «ww» , обозначает неделю. Но расчет осуществляется по разному. Подробнее об этом на сайте разработчиков.

Параметры firstdayofweek и firstweekofyear определяют правила расчета количества недель между датами.

Таблицы констант из коллекций firstdayofweek и firstweekofyear смотрите в параграфах «Приложение 2» и «Приложение 3».

Источник

Преобразует время из текстового формата в числовой

Возвращает заданное время в числовом формате

Преобразует дату в числовом формате в год

Возвращает заданную дату в числовом формате

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

Преобразует дату в числовом формате в день месяца

Преобразует дату в числовом формате в день недели

Вычисляет количество дней между двумя датами для 360-дневного года

Возвращает количество дней между двумя датами

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

Возвращает дату в числовом формате для последнего дня месяца, отстоящего вперед или назад на заданное число месяцев

Преобразует дату в числовом формате в месяцы

Преобразует дату в числовом формате в минуты

Преобразует дату в числовом формате в число, которое указывает, на какую неделю года приходится дата

Возвращает номер недели по ISO для заданной даты

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

Возвращает числовое значение даты, предшествующей заданному количеству рабочих дней или следующей за ними, руководствуясь при этом параметрами, указывающими выходные дни и их количество

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

Возвращает текущую дату в числовом формате

Преобразует дату в числовом формате в секунды

Возвращает текущую дату и время в числовом формате

Преобразует дату в числовом формате в часы

Возвращает количество полных рабочих дней между двумя датами

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

What to Know

  • The DATEVALUE function in Excel converts a text-formatted date into a serial number.
  • Use this function when a cell contains a date that’s formatted as text, not a number, which can happen with imported or copied data.
  • The function’s syntax and argument is: =DATEVALUE(date_text)

This article explains how to use the DATEVALUE function in any version of Excel including Excel 2019 and Microsoft 365.

What is the DATEVALUE Function?

The DATEVALUE function in Excel converts a text-formatted date into a serial number. Excel can then read the serial number to understand the date.

This Excel function is necessary when a cell contains date information but it’s stored in regular text. Instead of automatically converting it to a date, Excel sees the cell as just numbers and letters, making it hard to work with. This can happen if the date has been copied or imported from elsewhere.

You can use the DATEVALUE Excel function to produce the serial number of the date which can then be used to properly format it as a date and use it with other date-based formulas, sort it with other dates, etc.

The DATEVALUE function works in all versions of Excel.

DATEVALUE Function Syntax & Arguments

All formulas that use this function should be formatted like this:

=DATEVALUE(date_text)

date_text is the only argument it supports. It can reference other cells or the date information can be stored within the formula.

Here are some rules to remember about the DATEVALUE function:

  • If the date_text year is omitted, the current year is used.
  • If date_text includes time information, Excel ignores it.
  • If the date information is entered directly into the formula, it must be surrounded by quotes.
  • If the date information is referenced in another cell that includes the text name of the month (e.g., Mar or March), the month must be in the second position (like 31-Mar-2020).
  • The #VALUE! error will display if date_text falls outside of the date range 1/1/1900–12/31/9999.
  • The #VALUE! error will display if date_text appears to be a number (i.e., it doesn’t have dashes or slashes like a typical date).

DATEVALUE Function Examples

Here’s a look at some of the different ways you might use this function:

Reference Date From Another Cell

=DATEVALUE(A2)

Assuming A1 reads as 4-4-2002, this DATEVALUE formula example would produce the serial number 37350.

Enter Date Inside Formula

=DATEVALUE("12/25/2007")

This is another way to use this function. Entering the date in quotes is a substitute for calling on another cell. This formula produces the serial date 39441.

Make Date From Multiple Cells

=DATEVALUE(A2 & "/" & A3 & "/" & A4)

In this example of the DATEVALUE function, the same setup is used but we’re grabbing the date information from three separate cells: A2=5, A3=18, and A4=2017.

This requires the ampersand sign so that we can add slashes to separate the day, month, and year. However, the result is still a serial number since that’s what the function is for, so we’d have to format the cell as a real date (see below) to see it presented as 5/18/2017.

Use Ampersand in Date Formula

=DATEVALUE("3" & "/" & A2 & "/" & "2002")

In this example, the function is a lot like the one above it, but instead of using cell references to figure the day and year, we’re entering those in manually using double quotes.

Extract Date From Cell With Other Data

=DATEVALUE(LEFT(A20,10))

If the cell contains other information that you don’t need, you can use functions like LEFT and RIGHT to isolate the date. In this example, the DATEVALUE function is coupled with the LEFT function so that it looks at only the first 10 characters from the left. The result is 41654, which Excel can format as a date to produce 1/15/2014.

Extract Date With MID Function

=DATEVALUE(MID(A40,FIND(" ",A40)+1,7))

Finally, we have this formula that combines not only the MID function but also the FIND function to extract the date and present it in the serial number format. The MID function sets A2 as the target and uses FIND to define the space (» «) as the point where the function should start counting. The number at the end of the MID function defines how many characters to extract, which is 7 in our example. The result is 43944, which when formatted as a date turns into 4/23/2020.

DATEVALUE Errors

Below are some examples of situations where the DATEVALUE function will show an error. Per the rules mentioned above, the rows with the #VALUE! error contain data that can’t be processed by this function.

Formatting Numbers Into Dates

When Excel produces a date’s serial number, you’re left with a number that signifies how many days away it is from 1/1/1900. This is hardly usable, so what you need to do is format that cell as a regular date.

One way to know right away if the cell is formatted as text or as a date is to check how it’s aligned within the cell. Dates formatted as text are usually left-aligned, while date-formatted cells are typically right-aligned.

  1. Select the cell(s) that need to be formatted as a date.

  2. From the Home tab at the top of Excel, locate the Number section.

  3. Select the drop-down menu and choose a date option, like Short Date or Long Date.

Thanks for letting us know!

Get the Latest Tech News Delivered Every Day

Subscribe

английском русском
DATEVALUE

ДАТАЗНАЧ

Описание

Функция ДАТАЗНАЧ преобразует дату, которая хранится в виде текста, в порядковый номер, который Microsoft Excel воспринимает как дату. Например, формула ДАТАЗНАЧ(«1.1.2008») возвращает число 39 448, соответствующее 1 января 2008 года.

 Примечание.   Порядковый номер, возвращаемый функцией ДАТАЗНАЧ, может отличаться от полученного в примере выше. Это зависит от параметров даты, используемых компьютером.

Функция ДАТАЗНАЧ полезна в случаях, когда лист содержит даты в текстовом формате, которые требуется отфильтровать, отсортировать или отформатировать в виде дат или использовать в вычислениях с датами.

Чтобы порядковый номер даты отображался в виде даты, к ячейке необходимо применить формат даты. Дополнительные сведения об отображении чисел в виде дат см. в разделе См. также.

Дополнительная информация (источник)

Функции для работы с датой и временем в VBA Excel. Синтаксис, параметры, спецсимволы, примеры. Функции, возвращающие текущие дату и время по системному таймеру.

Функция Date

Date – это функция, которая возвращает значение текущей системной даты. Тип возвращаемого значения – Variant/Date.

Синтаксис

Пример

Sub PrimerDate()

    MsgBox «Сегодня: « & Date

End Sub

Функция DateAdd

DateAdd – это функция, которая возвращает результат прибавления к дате указанного интервала времени. Тип возвращаемого значения – Variant/Date.

Синтаксис

DateAdd(interval, number, date)

Параметры

Параметр Описание
interval Обязательный параметр. Строковое выражение из спецсимволов, представляющее интервал времени, который требуется добавить.
number Обязательный параметр. Числовое выражение, задающее количество интервалов, которые необходимо добавить. Может быть как положительным (возвращается будущая дата), так и отрицательным (возвращается предыдущая дата).
date Обязательный параметр. Значение типа Variant/Date или литерал, представляющий дату, к которой должен быть добавлен интервал.

Таблицу аргументов (значений) параметра interval смотрите в параграфе «Приложение 1».

Примечание к таблице аргументов: три символа – y, d, w – указывают функции DateAdd на один день, который необходимо прибавить к исходной дате number раз.

Пример

Sub PrimerDateAdd()

    MsgBox «31.01.2021 + 1 месяц = « & DateAdd(«m», 1, «31.01.2021») ‘Результат: 28.02.2021

    MsgBox «Сегодня + 3 года = « & DateAdd(«yyyy», 3, Date)

    MsgBox «Сегодня — 2 недели = « & DateAdd(«ww», 2, Date)

    MsgBox «10:22:14 + 10 минут = « & DateAdd(«n», 10, «10:22:14») ‘Результат: 10:32:14

End Sub

Функция DateDiff

DateDiff – это функция, которая возвращает количество указанных интервалов времени между двумя датами. Тип возвращаемого значения – Variant/Long.

Синтаксис

DateDiff(interval, date1, date2, [firstdayofweek], [firstweekofyear])

Параметры

Параметр Описание
interval Обязательный параметр. Строковое выражение из спецсимволов, представляющее интервал времени, количество которых (интервалов) требуется вычислить между двумя датами.
date1, date2 Обязательные параметры. Значения типа Variant/Date, представляющие две даты, между которыми вычисляется количество указанных интервалов.
firstdayofweek Необязательный параметр. Константа, задающая первый день недели. По умолчанию – воскресенье.
firstweekofyear Необязательный параметр. Константа, задающая первую неделю года. По умолчанию – неделя, в которую входит 1 января.

Таблицу аргументов (значений) параметра interval смотрите в параграфе «Приложение 1».

Примечание к таблице аргументов: в отличие от функции DateAdd, в функции DateDiff спецсимвол "w", как и "ww", обозначает неделю. Но расчет осуществляется по разному. Подробнее об этом на сайте разработчиков.

Параметры firstdayofweek и firstweekofyear определяют правила расчета количества недель между датами.

Таблицы констант из коллекций firstdayofweek и firstweekofyear смотрите в параграфах «Приложение 2» и «Приложение 3».

Пример

Sub PrimerDateDiff()

‘Даже если между датами соседних лет разница 1 день,

‘DateDiff с интервалом «y» покажет разницу — 1 год

    MsgBox DateDiff(«y», «31.12.2020», «01.01.2021») ‘Результат: 1 год

    MsgBox DateDiff(«d», «31.12.2020», «01.01.2021») ‘Результат: 1 день

    MsgBox DateDiff(«n», «31.12.2020», «01.01.2021») ‘Результат: 1440 минут

    MsgBox «Полных лет с начала века = « & DateDiff(«y», «2000», Year(Now) 1)

End Sub

Функция DatePart

DatePart – это функция, которая возвращает указанную часть заданной даты. Тип возвращаемого значения – Variant/Integer.

Есть предупреждение по использованию этой функции.

Синтаксис

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

Параметры

Параметр Описание
interval Обязательный параметр. Строковое выражение из спецсимволов, представляющее часть даты, которую требуется извлечь.
date Обязательные параметры. Значение типа Variant/Date, представляющее дату, часть которой следует извлечь.
firstdayofweek Необязательный параметр. Константа, задающая первый день недели. По умолчанию – воскресенье.
firstweekofyear Необязательный параметр. Константа, задающая первую неделю года. По умолчанию – неделя, в которую входит 1 января.

Таблицу аргументов (значений) параметра interval смотрите в параграфе «Приложение 1». В третьей графе этой таблицы указаны интервалы значений, возвращаемых функцией DatePart.

Таблицы констант из коллекций firstdayofweek и firstweekofyear смотрите в параграфах «Приложение 2» и «Приложение 3».

Пример

Sub PrimerDatePart()

    MsgBox DatePart(«y», «31.12.2020») ‘Результат: 366

    MsgBox DatePart(«yyyy», CDate(43685)) ‘Результат: 2019

    MsgBox DatePart(«n», CDate(43685.45345)) ‘Результат: 52

    MsgBox «День недели по счету сегодня = « & DatePart(«w», Now, vbMonday)

End Sub

Функция DateSerial

DateSerial – это функция, которая возвращает значение даты для указанного года, месяца и дня. Тип возвращаемого значения – Variant/Date.

Синтаксис

DateSerial(year, month, day)

Параметры

Параметр Описание
year Обязательный параметр типа Integer. Числовое выражение, возвращающее значение от 100 до 9999 включительно.
month Обязательный параметр типа Integer. Числовое выражение, возвращающее любое значение (в пределах Integer), а не только от 1 до 12.*
day Обязательный параметр типа Integer. Числовое выражение, возвращающее любое значение (в пределах Integer), а не только от 1 до 31.*

* Функция DateSerial автоматически пересчитывает общее количество дней в полные месяцы и остаток, общее количество месяцев в полные годы и остаток (подробнее в примере).

Пример

Sub PrimerDateSerial()

    MsgBox DateSerial(2021, 2, 10) ‘Результат: 10.02.2020

    MsgBox DateSerial(2020, 1, 400) ‘Результат: 03.02.2021

End Sub

Разберем подробнее строку DateSerial(2020, 1, 400):

  • 400 дней = 366 дней + 31 день + 3 дня;
  • 366 дней = 1 год, так как по условию month:=1, значит февраль 2020 входит в расчет, а в нем – 29 дней;
  • 31 день = 1 месяц, так как сначала заполняется январь (по условию month:=1);
  • 3 дня – остаток.

В итоге получается:

DateSerial(2020+1, 1+1, 3) = DateSerial(2021, 2, 3)

Функция DateValue

DateValue – это функция, которая преобразует дату, указанную в виде строки, в значение типа Variant/Date (время игнорируется).

Синтаксис

Параметр date – строковое выражение, представляющее дату с 1 января 100 года по 31 декабря 9999 года.

Пример

Sub PrimerDateValue()

    MsgBox DateValue(«8 марта 2021») ‘Результат: 08.03.2021

    MsgBox DateValue(«17 мая 2021 0:59:15») ‘Результат: 17.05.2021

End Sub

Функция DateValue игнорирует время, указанное в преобразуемой строке, но если время указано в некорректном виде (например, «10:60:60»), будет сгенерирована ошибка.

Функция Day

Day – это функция, которая возвращает день месяца в виде числа от 1 до 31 включительно. Тип возвращаемого значения – Variant/Integer.

Синтаксис

Параметр date – любое числовое или строковое выражение, представляющее дату.

Пример

Sub PrimerDay()

    MsgBox Day(Now)

End Sub

Функция IsDate

IsDate – это функция, которая возвращает True, если выражение является датой или распознается как допустимое значение даты или времени. В остальных случаях возвращается значение False.

Синтаксис

Параметр expression – это переменная, возвращающая дату или строковое выражение, распознаваемое как дата или время.

Значение, возвращаемое переменной expression, не должно выходить из диапазона допустимых дат: от 1 января 100 года до 31 декабря 9999 года (для Windows).

Пример

Sub PrimerIsDate()

    MsgBox IsDate(«18 апреля 2021») ‘Результат: True

    MsgBox IsDate(«31 февраля 2021») ‘Результат: False

    MsgBox IsDate(«4.10.20 11:12:54») ‘Результат: True

End Sub

Функция Hour

Hour – это функция, которая возвращает количество часов в виде числа от 0 до 23 включительно. Тип возвращаемого значения – Variant/Integer.

Синтаксис

Параметр time – любое числовое или строковое выражение, представляющее время.

Пример

Sub PrimerHour()

    MsgBox Hour(Now)

    MsgBox Hour(«22:36:54»)

End Sub

Функция Minute

Minute – это функция, которая возвращает количество минут в виде числа от 0 до 59 включительно. Тип возвращаемого значения – Variant/Integer.

Синтаксис

Параметр time – любое числовое или строковое выражение, представляющее время.

Пример

Sub PrimerMinute()

    MsgBox Minute(Now)

    MsgBox Minute(«22:36:54»)

End Sub

Функция Month

Month – это функция, которая возвращает день месяца в виде числа от 1 до 12 включительно. Тип возвращаемого значения – Variant/Integer.

Синтаксис

Параметр date – любое числовое или строковое выражение, представляющее дату.

Пример

Sub PrimerMonth()

    MsgBox Month(Now)

End Sub

Функция MonthName

MonthName – это функция, которая возвращает название месяца в виде строки.

Синтаксис

MonthName(month, [abbreviate])

Параметры

Параметр Описание
month Обязательный параметр. Числовое обозначение месяца от 1 до 12 включительно.
abbreviate Необязательный параметр. Логическое значение: True – возвращается сокращенное название месяца, False (по умолчанию) – название месяца не сокращается.

Пример

Sub PrimerMonthName()

    MsgBox MonthName(10) ‘Результат: Октябрь

    MsgBox MonthName(10, True) ‘Результат: окт

End Sub

Функция Now

Now – это функция, которая возвращает текущую системную дату и время. Тип возвращаемого значения – Variant/Date.

Синтаксис

Пример

Sub PrimerNow()

    MsgBox Now

    MsgBox Day(Now)

    MsgBox Hour(Now)

End Sub

Функция Second

Second – это функция, которая возвращает количество секунд в виде числа от 0 до 59 включительно. Тип возвращаемого значения – Variant/Integer.

Синтаксис

Параметр time – любое числовое или строковое выражение, представляющее время.

Пример

Sub PrimerSecond()

    MsgBox Second(Now)

    MsgBox Second(«22:30:14»)

End Sub

Функция Time

Time – это функция, которая возвращает значение текущего системного времени. Тип возвращаемого значения – Variant/Date.

Синтаксис

Пример

Sub PrimerTime()

    MsgBox «Текущее время: « & Time

End Sub

Функция TimeSerial

TimeSerial – это функция, которая возвращает значение времени для указанного часа, минуты и секунды. Тип возвращаемого значения – Variant/Date.

Синтаксис

TimeSerial(hour, minute, second)

Параметры

Параметр Описание
hour Обязательный параметр типа Integer. Числовое выражение, возвращающее значение от 0 до 23 включительно.
minute Обязательный параметр типа Integer. Числовое выражение, возвращающее любое значение (в пределах Integer), а не только от 0 до 59.*
second Обязательный параметр типа Integer. Числовое выражение, возвращающее любое значение (в пределах Integer), а не только от 0 до 59.*

* Функция TimeSerial автоматически пересчитывает общее количество секунд в полные минуты и остаток, общее количество минут в полные часы и остаток (подробнее в примере).

Пример

Sub PrimerTime()

    MsgBox TimeSerial(5, 16, 4) ‘Результат: 5:16:04

    MsgBox TimeSerial(5, 75, 158) ‘Результат: 6:17:38

End Sub

Разберем подробнее строку TimeSerial(5, 75, 158):

  • 158 секунд = 120 секунд (2 минуты) + 38 секунд;
  • 75 минут = 60 минут (1 час) + 15 минут.

В итоге получается:

TimeSerial(5+1, 15+2, 38) = TimeSerial(6, 17, 38)

Функция TimeValue

TimeValue – это функция, которая преобразует время, указанное в виде строки, в значение типа Variant/Date (дата игнорируется).

Синтаксис

Параметр time – строковое выражение, представляющее время с 0:00:00 по 23:59:59 включительно.

Пример

Sub PrimerTimeValue()

    MsgBox TimeValue(«6:45:37 PM») ‘Результат: 18:45:37

    MsgBox TimeValue(«17 мая 2021 3:59:15 AM») ‘Результат: 3:59:15

End Sub

Функция TimeValue игнорирует дату, указанную в преобразуемой строке, но если дата указана в некорректном виде (например, «30.02.2021»), будет сгенерирована ошибка.

Функция Weekday

Weekday – это функция, которая возвращает день недели в виде числа от 1 до 7 включительно. Тип возвращаемого значения – Variant/Integer.

Синтаксис

Weekday(date, [firstdayofweek])

Параметры

Параметр Описание
date Обязательный параметр. Любое выражение (числовое, строковое), отображающее дату.
firstdayofweek Константа, задающая первый день недели. По умолчанию – воскресенье.

Таблицу констант из коллекции firstdayofweek смотрите в параграфе «Приложение 2».

Пример

Sub PrimerWeekday()

    MsgBox Weekday(«23 апреля 2021», vbMonday) ‘Результат: 5

    MsgBox Weekday(202125, vbMonday) ‘Результат: 6

End Sub

Функция WeekdayName

WeekdayName – это функция, которая возвращает название дня недели в виде строки.

Синтаксис

WeekdayName(weekday, [abbreviate], [firstdayofweek])

Параметры

Параметр Описание
weekday Обязательный параметр. Числовое обозначение дня недели от 1 до 7 включительно.
abbreviate Необязательный параметр. Логическое значение: True – возвращается сокращенное название дня недели, False (по умолчанию) – название дня недели не сокращается.
firstdayofweek Константа, задающая первый день недели. По умолчанию – воскресенье.

Таблицу констант из коллекции firstdayofweek смотрите в параграфе «Приложение 2».

Пример

Sub PrimerWeekdayName()

    MsgBox WeekdayName(3, True, vbMonday) ‘Результат: Ср

    MsgBox WeekdayName(3, , vbMonday) ‘Результат: среда

    MsgBox WeekdayName(Weekday(Now, vbMonday), , vbMonday)

End Sub

Функция Year

Year – это функция, которая возвращает номер года в виде числа. Тип возвращаемого значения – Variant/Integer.

Синтаксис

Параметр date – любое числовое или строковое выражение, представляющее дату.

Пример

Sub PrimerYear()

    MsgBox Year(Now)

End Sub

Приложение 1

Таблица аргументов (значений) параметраinterval для функций DateAdd, DateDiff и DatePart:

Аргумент Описание Интервал значений
yyyy Год 100 – 9999
q Квартал 1 – 4
m Месяц 1 – 12
y День года 1 – 366
d День месяца 1 – 31
w День недели 1 – 7
ww Неделя 1 – 53
h Часы 0 – 23
n Минуты 0 – 59
s Секунды 0 – 59

В третьей графе этой таблицы указаны интервалы значений, возвращаемых функцией DatePart.

Приложение 2

Константы из коллекции firstdayofweek:

Константа Значение Описание
vbUseSystem 0 Используются системные настройки
vbSunday 1 Воскресенье (по умолчанию)
vbMonday 2 Понедельник
vbTuesday 3 Вторник
vbWednesday 4 Среда
vbThursday 5 Четверг
vbFriday 6 Пятница
vbSaturday 7 Суббота

Приложение 3

Константы из коллекции firstweekofyear:

Константа Значение Описание
vbUseSystem 0 Используются системные настройки.
vbFirstJan1 1 Неделя, в которую входит 1 января (по умолчанию).
vbFirstFourDays 2 Неделя, в которую входит не менее четырех дней нового года.
vbFirstFullWeek 3 Первая полная неделя года.

Понравилась статья? Поделить с друзьями:
  • Dates as text in excel
  • Dates and times in excel vba
  • Dates and months in excel
  • Datediff in excel vba
  • Datediff excel нет в эксель