Как вытащить дату из текста excel
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Функция ДАТАЗНАЧ
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще. Меньше
В этой статье описаны синтаксис формулы и использование функции ДАТАЗНАЧ в Microsoft Excel.
Описание
Функция ДАТАЗНАЧ преобразует дату, которая хранится в виде текста, в порядковый номер, который Excel воспринимает как дату. Например, формула =ДАТАЗНАЧ(«1.1.2008») возвращает число 39 448, соответствующее 1 января 2008 года. Однако следует помнить, что в зависимости от настроек даты вашего компьютера результаты функции ДАТАЗНАЧ могут отличаться от представленных в этом примере.
Функция ДАТАЗНАЧ полезна в случаях, когда лист содержит даты в текстовом формате, которые требуется отфильтровать, отсортировать или отформатировать в виде дат или использовать в вычислениях с датами.
Чтобы дата была отформатирована в виде даты, необходимо применить к ячейке формат даты. Ссылки на дополнительные сведения о выводе чисел в качестве дат можно найти в разделе См. также.
Синтаксис
Аргументы функции ДАТАЗНАЧ описаны ниже.
- Дата_как_текст — обязательный аргумент. Текст, представляющий дату в формате даты Excel, или ссылка на ячейку с таким текстом. Например, «30.01.2008» и «30-янв-2008» — это текстовые строки в кавычках, представляющие даты. При использовании системы дат по умолчанию в Microsoft Excel для Windows аргумент date_text должен представлять дату в период с 1 января 1900 г. по 31 декабря 9999 г. Функция ДАТАVALUE возвращает #VALUE! значение ошибки, если значение аргумента date_text попадает за пределы этого диапазона. Если в аргументе дата_как_текст опущен год, функция ДАТАЗНАЧ использует текущий год по показаниям встроенных часов компьютера. Сведения о времени в аргументе дата_как_текст игнорируются.
Примечания
- В Excel даты хранятся в виде порядковых номеров, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 447 дней.
- Большинство функций автоматически преобразует даты в числовой формат.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Дата из текста (ДАТАИЗСТРОКИ)
Функция ищет дату в строке вне зависимости от того в какой части текста она находится, формат даты при этом может быть практически любым.
Описание работы
Часто необходимо извлечь дату из ячейки, которая содержит длинный текст. Задача может усложнится тем, что дата может быть как в начале, в конце или середине текста. Еще сложнее дело будет обстоять, что дата в тексте имеет разные форматы.
Извлечь в данном случае дату из текста стандартными методами крайне сложно.
С помощью функции на VBA =ДАТАИЗСТРОКИ это сделать очень просто. Функция найдет дату в тексте вне зависимости от формата ее записи и расположения ее в строке. Также распознаются даты на русском и английском языке.
Пример 1
Извлечение даты из текста, когда она расположена в начале строки. Это простой случай, здесь можно воспользоваться и сочетанием стандартных текстовых функций.

Пример 2
Аналогичный пример, но дата расположена в конце строки.

Пример 3
Извлечение даты из любой части текста и особенности функции. Обойтись стандартными функциями тут практически невозможно. Алгоритм функции из надстройки справится с эти очень просто.

Синтаксис функции
Функция =ДАТАИЗСТРОКИ(ТЕКСТ;[En]) имеет два аргумента:
- ТЕКСТ — Текст, из которого необходимо извлечь дату
- [En] — Необязательный параметр. Если дата содержит наименование месяца на английском языке, укажите данный параметр равный 1. По умолчанию равно 0.
Пример 4
Извлечение даты на английском языке из текста


Надстройка
VBA-Excel
Надстройка для Excel содержит большой набор полезных функций, с помощью которых вы значительно сократите время и увеличите скорость работы с программой.
Преобразование дат из текстового формата в формат даты
В некоторых случаях даты могут быть отформатированы и храниться в ячейках в виде текста. Например, вы могли ввести дату в ячейку, которая была отформатирована как текст, или данные могли быть импортированы или вставлены из внешнего источника данных в виде текста.
Даты, отформатированные как текст, выравниваются по левому краю в ячейке (а не по правому краю). Если включена проверка ошибок, текстовые даты с двумя цифрами лет также могут быть помечены индикатором ошибки: .
Поскольку функция проверки ошибок в Excel распознает даты в текстовом формате с двузначным номером года, можно воспользоваться средством автозамены и преобразовать их в даты в формате даты. Функцию DATEVALUE можно использовать для преобразования большинства других типов текстовых дат в даты.
Преобразование текстовых дат с двумя цифрами лет с помощью проверки ошибок
При импорте данных в Excel из другого источника или при вводе дат с двумя цифрами лет в ячейки, которые ранее были отформатированы как текст, в левом верхнем углу ячейки может появиться небольшой зеленый треугольник. Этот индикатор ошибки указывает на то, что дата хранится в текстовом формате, как показано в данном примере.

Индикатор ошибки можно использовать для преобразования дат из текста в формат даты.
Примечания: Сначала убедитесь, что проверка ошибок включена в Excel. Для этого:
- Щелкните Файл >Параметры >Формулы. В Excel 2007 нажмите кнопку Microsoft Office , а Excel параметры >формул.
- В разделе «Проверка ошибок» установите флажок «Включить фоновую проверку ошибок». Все найденные ошибки помечаются треугольником в левом верхнем углу ячейки.
- В разделе «Правила проверки ошибок» выберите ячейки, содержащие годы, представленные в виде двух цифр.
Выполните следующую процедуру, чтобы преобразовать форматированную текстом дату в обычную дату:
-
Выделите ячейку или диапазон смежных ячеек с индикатором ошибки в верхнем левом углу. Дополнительные сведения см. в разделе «Выбор ячеек, диапазонов, строк или столбцов на листе».
Совет: Чтобы отменить выделение ячеек, щелкните любую ячейку на листе.


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

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

- Выделите ячейку, диапазон ячеек или столбец, которые нужно переформатировать.
- Щелкните «Формат номера» и выберите нужный формат даты.
Формат короткой даты выглядит следующим образом:

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

Преобразование дат в текстовом формате с помощью функции ДАТАЗНАЧ
Чтобы преобразовать текстовую дату в ячейке в серийный номер, используйте функцию DATEVALUE. Затем скопируйте формулу, выделите ячейки, содержащие текстовые даты, и используйте специальную вставку, чтобы применить к ним формат даты.
- Выделите пустую ячейку и убедитесь, что ее число имеет формат «Общие».
- В пустой ячейке сделайте следующее.
- Введите =DATEVALUE(
- Щелкните ячейку, содержащую дату в текстовом формате, которую следует преобразовать.
- ВВОД )
- Нажмите клавишу ВВОД, и функция DATEVALUE возвращает серийный номер даты, представленной текстовой датой.
Что такое Excel серийный номер? В Excel даты хранятся в виде порядковых номеров, что позволяет использовать их в вычислениях. По умолчанию 1 января 1900, является серийным номером 1, а 1 января 2008 г. — серийным номером 39448, так как это 39 448 дней после 1 января, 1900.To скопируйте формулу преобразования в диапазон смежных ячеек, выделите ячейку, содержащую введенную формулу, а затем перетащите маркер заполнения по диапазону пустых ячеек, которые соответствуют диапазону ячеек, содержащих текстовые даты.
Дополнительные сведения
Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.