Найти в Дзене
Андрей Сухов

Извлекаем дату из текста в Excel

Нередко среди данных, вносимых в таблицу, фигурируют номера документов. В ряде ситуаций при формировании номера документа используются вспомогательные данные, частью которых может быть дата. Например, номер таможенной декларации состоит из 21-ой цифры, которые разделены на три блока косой чертой. Второй блок цифр обозначает дату регистрации документа и иногда эту дату нужно вынести в отдельную ячейку. Есть как минимум два способа это сделать. Первый способ - с помощью формулы. Поможет в этом функция ДАТА, которая преобразует дату из текстового формата. У функции три аргумента - год, месяц и день. Для примера подставим данные прямо в формулу. На выходе получим дату в правильном числовом формате. Но тут есть нюанс. В нашем примере год представлен лишь двумя цифрами и если его подставить в таком виде, то получим не 2025, а 1925 год. Произойдет это потому, что отсчет дат в Экселе начинается с 1900 года. Чтобы отобразить дату не 20-ого, а 21-ого века, нужно к ней прибавить 100. То есть в к
Оглавление

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

Номер таможенной декларации
Номер таможенной декларации

Есть как минимум два способа это сделать.

Дата из текста с помощью формул

Первый способ - с помощью формулы.

Поможет в этом функция ДАТА, которая преобразует дату из текстового формата. У функции три аргумента - год, месяц и день.

Аругменты функции ДАТА
Аругменты функции ДАТА

Для примера подставим данные прямо в формулу.

Фукнция ДАТА
Фукнция ДАТА

На выходе получим дату в правильном числовом формате. Но тут есть нюанс. В нашем примере год представлен лишь двумя цифрами и если его подставить в таком виде, то получим не 2025, а 1925 год. Произойдет это потому, что отсчет дат в Экселе начинается с 1900 года. Чтобы отобразить дату не 20-ого, а 21-ого века, нужно к ней прибавить 100. То есть в качестве значения в нашем примере указать не 25, а 125.

Зная этот нюанс можем приступить к извлечению даты.

Получить необходимые символы поможет функции ПСТР. Данная функция возвращает заданное количество символов текстовой строки, начиная с указанной позиции. Для простоты пока разобьем формулу на составляющие. Сначала нужно извлечь год. Это два символа, начиная с 14-ого.

Затем по аналогии извлечем месяц (два символа, начиная с 12-ого) и день (два символа, начиная с 10-ого). Останется лишь объединить значения в формуле с функцией ДАТА. Не забываем прибавить 100 к году.

Извлечение даты из текстовой строки
Извлечение даты из текстовой строки

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

Общая формула
Общая формула

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

Имеется в виду следующее - если есть ячейка, в которой текстом прописана дата (1, рис.ниже), то данная функция позволит перевести текст в число, соответствующее дате (2).

Преобразование текста в дату
Преобразование текста в дату

Напомню, что для Эксель даты являются обычным числом. Так как отсчет дат в программе начинается с 1-ого января 1900 года, то эта дата для Эксель будет являться 1. Второе января - 2 и так далее. То есть любая дата в Экселе - это число, обозначающее количество дней, прошедших с 1-ого января 1900-ого года. В примере выше - 45962. Получив дату в таком виде достаточно изменить ее числовой формат (3).

Теперь задействуем данную функцию для решения нашей задачи. Мы можем также как и раньше с помощью функции ПСТР получить цифры, соответствующие дню, месяцу и году. Останется лишь вставить разделитель, чтобы сформировать текстовую дату. Для этого можно задействовать, например, функцию СЦЕПИТЬ и подставлять точку между соответствующими числами.

Формула с функцией ДАТАЗНАЧ
Формула с функцией ДАТАЗНАЧ

Текст по столбцам

Ну и есть еще один способ решить задачу, вообще не прибегая к формулам. Во-первых, нужно извлечь цифры, относящиеся к дате в отдельный столбец. Сделать это можно с помощью мгновенного заполнения. В ячейке рядом с основным столбцов вручную введем нужные цифры. Затем протянем значение по всему столбцу и в параметрах автозаполнения выберем Мгновенное заполнение.

Мгновенное заполнение
Мгновенное заполнение

Эксель подтянет нужные значения из первого столбца. Если появится ошибка то, либо можно ввести вручную данные для двух строк, чтобы создать для программы более уверенный шаблон, либо вручную выделить столбец и нажать сочетание Сtrl + E для запуска мгновенного заполнения.

Теперь выделим столбец с данными и через вкладку Данные вызовем мастер распределения текста по столбцам. Перейдем сразу к третьему шагу, на котором укажем, что данные являются датой и выберем подходящий шаблон - в моем примере это Дата-Месяц-Год.

Мастер распределения текста по столбцам
Мастер распределения текста по столбцам

Нажимаем Готово и получаем столбец с необходимыми значениями.

Ссылки на мои ресурсы по Excel

YouTube-канал по Excel и Word

Телеграм

Авторские книги и курсы