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

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

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

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

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

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

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



19.03.2017 00:52:08
Николай, доброго времени суток!
Большое спасибо за сайт и за приемы работы в Excel, которые Вы периодически публикуете! Многие из них применяю в своей работе.
Приведите, пожалуйста, пример, где возможно практическое применение функции ДАТАЗНАЧ (DATAVALUE), описанной в данной статье?
19.03.2017 23:24:14
Легко. Например, вы выгрузили здоровенную таблицу с данными из какой-нибудь 1C, где есть столбец с такими кривыми датами в текстовом формате. И надо преобразовать их в нормальные даты. Много раз такие ситуации встречал :)
Безусловно, есть и другие способы решения: макросы, Power Query, текст по столбцам и т.д. Эта функция - один из вариантов.
14.04.2017 14:36:26
Как-то сталкивался с обратной задачей: дату Excel перевести в Текст
Понятно, что можно формулой: =ТЕКСТ(Excel_Дата;"ДД.ММ.ГГГГ";)
– но проблема в том, что в английской версии Excel эта формула не работает из-за русского шаблона "ДД.ММ.ГГГГ".

А как без формулы дату Excel перевести в Текст? Я на уровне Excel решения не нашел вообще…
22.04.2017 10:46:39
Например, так:
=ЕСЛИ(ТЕКСТ(A1;"Д")="Д";ТЕКСТ(A1;"DD.MM.YYYY");ТЕКСТ(A1;"ДД.ММ.ГГГГ"))
24.04.2017 07:33:09
в чём автоматизация:писать эту строчку и копипастить дату?
15.06.2017 15:09:29
Добрый день, нужна ваша помощь. Уже неделю бьюсь над этой задачей но решения не нашел. Существует 2 таблицы, в одну даты заносятся в виде "2 июня", в другой в виде "02.06.2017", и их необходимо сравнить и в зависимости от результат выставить другую дату. Возможно ли это сделать штатными средствами excel? Если что, во второй таблице даты так же можно заводить в формате "2 июня".

С уважением,
Сергей.
30.06.2017 12:22:23
Николай, добрый день!
еще два примера восстановления даты (преобразования формата) они у Вас в других темах тоже фигурируют:
1) проставить "--" (двойной минус) в начале формулы
2) +0 или 0+ (прибавить ноль) в начале или в конце формулы
05.08.2017 18:41:03
Николай добрый день! Спасибо за сайт, огромная работа.3 неделю просматриваю и переделываю программу. На данный момент очень хочется решить 2 вопроса. 1 это как мне быстрее забить дату и время в одной ячейке. Пример простой в ячейке я набираю 10 / 8 пробел 21 шифт : 00 enter получается 10.08.17 21:00.  Можно как нибудь забивать дату и время без шифта 10082100 ну что то в этом роде? А второй я разбил по группам в одной ячейке у меня видны Страны,а в другой команды футбольные их максимум 30 и вот когда нажимаю на галочку справа я вижу только 8 . Можно сделать что было все 30 видно сразу чтоб быстрее выбирать из списка? Спасибо.
15.09.2017 12:01:55
1) С дополнительным столбцом  =ДАТАЗНАЧ(СЦЕПИТЬ(ЛЕВСИМВ(A1;2);".";ПСТР(A1;3;2)))+ВРЕМЯ(ПСТР(A1;5;2);ПРАВСИМВ(A1;2);0), А1 ваше значение. Формат ячейки меняйте на ДД.ММ.ГГ ч:мм
или =ДАТАЗНАЧ(СЦЕПИТЬ(ЛЕВСИМВ(A1;2);".";ПСТР(A1;3;2);".";"2017";))+ВРЕМЯ(ПСТР(A1;5;2);ПРАВСИМВ(A1;2);0)
   2) С помощью "Элементы управления формы" на вкладке Разработчик.
13.11.2017 21:47:12
Добрый вечер!
Как преобразовать такой пример: 31 января 1947 года в дату в формате Ексель?!
01.12.2017 06:25:15
Добрый день!
Подскажите, пожалуйста, как преобразовать ячейки формата
03.11.2017 10:29
в обычную дату?
21.01.2018 03:08:56
Добрый день!
Подскажите пожалуйста как из номера сертификата в текстовом формате 156240402051217093 (где цифры с 10 по 15 это дата выпуска 051217)  извлечь эту дату? Эта функция также может быть полезна для извлечения даты из номера ГТД, например 10606050/011217/0016288.

Спасибо!
21.01.2018 03:21:15
Сам поразбирался и нашел. Может кому пригодится - извлечение даты из номера фитосанитарного сертификата, ГТД и других документов, если в номере "зашиты" эти данные.

=ДАТАЗНАЧ(СЦЕПИТЬ(ПСТР(A1;10;2);".";ПСТР(A1;12;2);".";ПСТР(A1;14;2)))
02.10.2020 02:03:58
Сергей, спасибо! Использовал вашу формулу)
04.10.2020 14:20:44
Не за что. Рад, что помог.
19.09.2019 18:20:13
Помогите пожалуйста, уже голову сломала.
10,11,14,15,16,17,18,21,22,23 марта 2016
Если в ячейке идет вот такой формат, а нам нужно чтоб даты шли отдельно, например
10 марта 2016

11 марта 2016
14 марта 2016? помогите:)
01.06.2024 19:21:31
Данные > Текст по столбцам. Затем столбцы транспонировать в строке и уж потом преобразовывать в даты.
15.10.2019 08:37:55
Николай, здравствуйте!
Помогите пожалуйста с формулой. Как преобразовать дату в формате      
Tue Feb 19 11:18:57 MSK 2019   в формат 19.02.2019, остальное выбросить.

С уважением, Ирина.
12.11.2019 15:43:11
А что делать, если бардак в колонке с датой?
Есть ячейки как дата со временем, есть как текст, где дата по разному введена.
Думал спасёт:
=ТЕКСТ(ЕСЛИ(ЕТЕКСТ(C2);ДАТАЗНАЧ(C2);C2);"ГГГГ-ММ-ДД чч:мм:сс")
Так время обнуляет!
Пришлось спасаться этим:
=ЕСЛИ(ЕТЕКСТ(C223835);C223835;ТЕКСТ(C223835;"ДД.ММ.ГГГ чч:мм:сс;@"))
Но тогда надо предварительно текст в порядок приводить. А я хотел автоматизировать процесс...

Что посоветуете?
20.02.2020 19:05:39
11 января 2018р.
11 января 2018 р.
1 января 2018 р.
Добрый день! Преобразовали PDF в EXCEL, даты выгрузились формат.
Мне нужно получить формат 11.01.2018 , при использовании формулу ДАТАЗНАЧ  помилка
#ЗНАЧ!
03.02.2021 19:38:57
Здравствуйте. Подскажите как преобразовать формат даты ГГГГММДД_ЧЧММ в ДД.ММ.ГГГГ ЧЧ:ММ?
07.05.2021 10:01:15
Здравствуйте! Нужна помощь: в ячейке введено значение типа "6 May 2021", надо преобразовать в дату.
01.11.2021 10:54:26
Если у вас англоязычный Office, то поможет функция DATEVALUE. Если русскоязычный, то придется сначала заменять May на Mай, Apr на Апр и т.д., а потом уже применять функцию ДАТАЗНАЧ, скорее всего.
16.03.2023 13:41:20
Николай, спасибо за пример!
Возможно есть средство, как вычесть даты между двумя датами?
Форматы кривые.  
14.03.2023 10:25:5516.03.2023 13:25:35
27.03.2025 12:49:23
Из парсинга документов, например ключевой ставки из https://base.garant.ru/10180094/
Дата выводится в виде:
KeyDateKeyRate (%)KeyDocs
28 октября 2024 г.21.0%Инф. сообщение Банка России от 25.10.2024
16 сентября 2024 г. - 27 октября 2024 г.19.0%Инф. сообщение Банка России от 13.09.2024
29 июля 2024 г. - 15 сентября 2024 г.18.0%Инф. сообщение Банка России от 26.07.2024
18 декабря 2023 г. - 28 июля 2024 г.16.0%Инф. сообщение Банка России от 15.12.2023
30 октября 2023 г. - 17 декабря 2023 г.15.0%Инф. сообщение Банка России от 27.10.2023
как её преобразовать при помощи формул Excel в нормальный числовой формат Даты, начала действия, т.е. начало действия ключевой ставки: 30 октября 2023 г., 18 декабря 2023 г., 29 июля 2024 г. 28 октября 2024 и/или
написать Web запрос (Макрос VBA for Excel).
Конечно, получать лучше всего из первоисточника (ЦБ РФ), но данные на сайте разрозненные.
Получить одним макросом все данные по интересующим валютам Валюта1, Валюта2, ключевую ставку с ссылкой на действующий документ и др. финансовые показатели.
Обычно это у меня лист: "Окружение", где всё это отображено:
ДатаUSDEURДатаUSDEURСrossПримБуквЗнакКодISO-DigВалюта
27.03.202584.2065 92.0029 27.03.202584.2065 92.0029 1.0926 ПроверитьGBR£R01035826Фунт Стерлингов
26.03.202584.1930 92.3409 USDR01235BYBBrR01090112Белорусский рубль
25.03.202583.8737 91.5252 Начало30.09.2024#Н/Д#Н/Д#Н/Д6USD$R01235840Доллар США
22.03.202584.6400 91.4262 КонецEURR01239978Евро
21.03.202584.3955 92.4633 EURR01239CNY¥R01375156Юань
20.03.202582.8487 90.8257 TRLR01700792Турецкая лира
19.03.202581.5018 87.5697 27.01.202593.2221 104.1735 1.1175 UANR01720980Гривна
18.03.202584.3059 90.8443 25.01.202598.2636 103.1870 1.0501 JPY¥R01820392иена
15.03.202585.5694 93.6087 AEDAEDR01230784Дирхам
14.03.202586.6190 94.2559 KeyDateKeyRateKeyStart
13.03.202586.6204 93.9710 1. 27.03.202521.00%

Это в каждой книге, -- лист "Окр", "Закупки", "Платежи" и др.

Подобная же беда с тарифами ЖКХ их собирать приходится вручную.
02.04.2025 02:20:53
подскажите пожалуйста, как с помощью формул можно из формата 20250511 сделать формат 11.05.2025
02.04.2025 08:50:02
Если исходное число в ячейке А1, то:
=ДАТА( ЛЕВСИМВ(A1;4) ; ПСТР(A1;5;2) ; ПРАВСИМВ(A1;2) )
т.е. разбираем исходное число на кусочки и используем их как аргументы функции ДАТА, чтобы собрать как полноценную дату обратно.
21.04.2025 14:03:20
Сначала не получилось перевести, была ошибка знач, но благодаря примеру, понял в чём подвох
Наверх