Работа excel с текстовыми датами

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 Еще…Меньше

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

Примечание: Маркер версии обозначает версию Excel, в которой она впервые появилась. В более ранних версиях эта функция отсутствует. Например, маркер версии 2013 означает, что данная функция доступна в выпуске Excel 2013 и всех последующих версиях.

Функция

Описание

ДАТА

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

РАЗНДАТ

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

ДАТАЗНАЧ

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

ДЕНЬ

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

ДНИ

Excel 2013

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

ДНЕЙ360

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

ДАТАМЕС

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

КОНМЕСЯЦА

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

ЧАС

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

НОМНЕДЕЛИ.ISO

Excel 2013

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

МИНУТЫ

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

МЕСЯЦ

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

ЧИСТРАБДНИ

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

ЧИСТРАБДНИ.МЕЖД

Excel 2010

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

ТДАТА

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

СЕКУНДЫ

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

ВРЕМЯ

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

ВРЕМЗНАЧ

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

СЕГОДНЯ

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

ДЕНЬНЕД

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

НОМНЕДЕЛИ

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

РАБДЕНЬ

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

РАБДЕНЬ.МЕЖД

Excel 2010

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

ГОД

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

ДОЛЯГОДА

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

Важно: Вычисляемые результаты формул и некоторые функции листа Excel могут несколько отличаться на компьютерах под управлением Windows с архитектурой x86 или x86-64 и компьютерах под управлением Windows RT с архитектурой ARM. Подробнее об этих различиях.

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

Для работы с датами в Excel в разделе с функциями определена категория «Дата и время». Рассмотрим наиболее распространенные функции в этой категории.

Как Excel обрабатывает время

Программа Excel «воспринимает» дату и время как обычное число. Электронная таблица преобразует подобные данные, приравнивая сутки к единице. В результате значение времени представляет собой долю от единицы. К примеру, 12.00 – это 0,5.

Значение даты электронная таблица преобразует в число, равное количеству дней от 1 января 1900 года (так решили разработчики) до заданной даты. Например, при преобразовании даты 13.04.1987 получается число 31880. То есть от 1.01.1900 прошло 31 880 дней.

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



Пример функции ДАТА

Построение значение даты, составляя его из отдельных элементов-чисел.

Синтаксис: год; месяц, день.

Все аргументы обязательные. Их можно задать числами или ссылками на ячейки с соответствующими числовыми данными: для года – от 1900 до 9999; для месяца – от 1 до 12; для дня – от 1 до 31.

Если для аргумента «День» задать большее число (чем количество дней в указанном месяце), то лишние дни перейдут на следующий месяц. Например, указав для декабря 32 дня, получим в результате 1 января.

Пример использования функции:

ДАТА.

Зададим большее количество дней для июня:

Большее количество дней.

Примеры использования в качестве аргументов ссылок на ячейки:

Ссылки в аргументах.

Функция РАЗНДАТ в Excel

Возвращает разницу между двумя датами.

Аргументы:

  • начальная дата;
  • конечная дата;
  • код, обозначающий единицы подсчета (дни, месяцы, годы и др.).

Способы измерения интервалов между заданными датами:

  • для отображения результата в днях – «d»;
  • в месяцах – «m»;
  • в годах – «y»;
  • в месяцах без учета лет – «ym»;
  • в днях без учета месяцев и лет – «md»;
  • в днях без учета лет – «yd».

В некоторых версиях Excel при использовании последних двух аргументов («md», «yd») функция может выдать ошибочное значение. Лучше применять альтернативные формулы.

Примеры действия функции РАЗНДАТ:

РАЗНДАТ.

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

Функция ГОД в Excel

Возвращает год как целое число (от 1900 до 9999), который соответствует заданной дате. В структуре функции только один аргумент – дата в числовом формате. Аргумент должен быть введен посредством функции ДАТА или представлять результат вычисления других формул.

Пример использования функции ГОД:

ГОД.

Функция МЕСЯЦ в Excel: пример

Возвращает месяц как целое число (от 1 до 12) для заданной в числовом формате даты. Аргумент – дата месяца, который необходимо отобразить, в числовом формате. Даты в текстовом формате функция обрабатывает неправильно.

Примеры использования функции МЕСЯЦ:

МЕСЯЦ.

Примеры функций ДЕНЬ, ДЕНЬНЕД и НОМНЕДЕЛИ в Excel

Возвращает день как целое число (от 1 до 31) для заданной в числовом формате даты. Аргумент – дата дня, который нужно найти, в числовом формате.

ДЕНЬ.

Чтобы вернуть порядковый номер дня недели для указанной даты, можно применить функцию ДЕНЬНЕД:

ДЕНЬНЕД.

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

Для отображения порядкового номера недели для указанной даты применяется функция НОМНЕДЕЛИ:

НОМНЕДЕЛИ.

Дата 24.05.2015 приходится на 22 неделю в году. Неделя начинается с воскресенья (по умолчанию).

С понедельника.

В качестве второго аргумента указана цифра 2. Поэтому формула считает, что неделя начинается с понедельника (второй день недели).

Скачать примеры функций для работы с датами

Для указания текущей даты используется функция СЕГОДНЯ (не имеет аргументов). Чтобы отобразить текущее время и дату, применяется функция ТДАТА ().

Skip to content

Как преобразовать текст в дату в Excel или извлечь ее из сложной фразы?

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

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

И вот о чём мы поговорим:

  • Как отличить обычные даты Excel от «текстовых дат»
  • Форматирование в дату
  • Функция ДАТАЗНАЧ
  • Функция ЗНАЧЕН
  • Как математические операции преобразуют текст в дату
  • Как обойти нестандартные разделители
  • Как можно использовать мастер преобразования текста в столбцы
  • Как преобразовать текст в дату при помощи формул
  • Быстрая конвертация при помощи Специальной вставки
  • Исправление записей с двузначными годами
  • Как преобразовать 8-значное число в дату
  • Простой способ преобразования текста в дату без формул

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

Как отличить обычные даты Excel от «текстовых дат»

Импортированные данные (или данные, введенные неправильно) могут выглядеть как обычные даты Excel, но они не ведут себя так, как выглядят. Microsoft Excel обрабатывает такие записи как текст. Поэтому вы не сможете правильно отсортировать таблицу в хронологическом порядке, а также использовать эти «неправильные даты» в формулах, сводных таблицах, диаграммах или любом другом инструменте Excel, который работает с временем.

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

Даты Текстовые значения

• По умолчанию выравнивание по правому краю.
• Можно выбрать различные форматы даты и изменить вид.
• Если выбрано несколько дат, в строке состояния отображается «Среднее», «Количество» и «Сумма».

· • По умолчанию выравнивание по левому краю.
• По умолчанию установлен формат «Общий». При изменении формата вид не меняется.
• Если выбраны несколько ячеек, строка состояния показывает только «Количество».
• В строке формул может быть виден начальный апостроф.

Их можно легко распознать, немного расширив столбцы, выделив один из них, вы­брав команду Формат ► Ячейки ► Выравнивание (Format ► Cells ► Alignment) и для па­раметра По горизонтали (Horizontal) выбрав значение Общий (General) (это вид ячеек по умолчанию). Щелкните кнопку ОК и внимательно просмотрите на таблицу.

Если какие-либо значения не выровнены по правому краю, значит Excel не считает их датами.

Как можно использовать форматирование.

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

Как вы, наверное, знаете, Excel хранит дату и время как порядковые номера дней, и только форматирование ячейки заставляет число отображаться в виде день-месяц-год. Например, 1 января 1900 года сохраняется как номер 1, 2 января 1900 года сохраняется как 2, а 1 января 2015 года сохраняется как 42005. Дополнительные сведения о том, как Excel сохраняет дату и время, см. в статье Форматирование дат.

При вычислении дат в Excel результатом, возвращаемым различными функциями, часто является число, обозначающее дату. Например, если  СЕГОДНЯ()+10 возвращает вместо дня, который наступает через 10 после сегодняшнего,  число вроде 44294, это не означает, что формула неверна. Просто формат ячейки установлен на Общий или Текст, тогда как это должно быть Дата.

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

Чтобы применить нестандартный формат, отличный от формата по умолчанию, выберите ячейки с такими числами и нажмите комбинацию клавиш Ctrl + 1, чтобы открыть диалоговое окно «Формат ячеек». На вкладке «Число» выберите «Дата», укажите нужный формат даты в разделе «Тип» и нажмите «ОК».

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

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

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

Функция Excel ДАТАЗНАЧ — изменить текст на дату

Функция ДАТАЗНАЧ (DATEVALUE в английской версии) переделает «дату-как текст» в порядковый номер дня, который Excel распознает как дату.

Синтаксис ДАТАЗНАЧ очень прост:

=ДАТАЗНАЧ(дата_как_текст)

Самое простое применение этой функции  =ДАТАЗНАЧ(A1), где A1 — это ячейка с датой, хранящейся в виде символьной строки.

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

На скриншоте представлено несколько формул ДАТАЗНАЧ в действии:

использование ДАТАЗНАЧ

На первый взгляд, результат работы может выглядеть для вас довольно неожиданным. Вы его видите на скриншоте в колонке С. Но пусть это вас не смущает: нужно просто применить нужное форматирование. Как видите, результат работы формулы – это порядковый номер дня начиная с 1900 года (столбец С). И если мы к нему применим правильный формат, то есть укажем программе, что это на самом деле не число, а день, то сразу же получим приемлемый результат (колонка D).

Итак, в столбце D показан результат из С, только уже как дата.

Как вы, наверное, знаете, Excel хранит датировки и время как порядковые номера, и только форматирование ячейки заставляет число отображаться в виде даты. В частности, 1 января 1900 года хранится как число 1, а 2 января 1900 года хранится как 2. Соответственно, 8 марта 2020 года хранится как 43898. Чтобы превратить такой серийный номер в дату, все, что вам нужно сделать — это изменить формат ячейки.

Для этого выберите клетку или диапазон ячеек с числами, которые вы хотите представить как даты, и нажмите комбинацию клавиш Ctrl + 1, чтобы открыть диалоговое окно «Формат ячеек». На вкладке «Числовые форматы» в пункте «Дата», выберите подходящий для вас внешний вид в разделе «Тип» и нажмите кнопку «ОК».

как установить нужный формат в ячейке

Обратите также внимание, что не с любым текстом можно провести подобную операцию. Если Эксель не может с ним справиться, то возвращает ошибку #ЗНАЧ! (см. метку 3 на рисунке выше)

Кроме того, если по какой-то причине у вас вместо точек использованы запятые, то при помощи функции ПОДСТАВИТЬ сразу замените их на точки – и всё будет в порядке.

Функция ДАТАЗНАЧ — что нужно запомнить?

При конвертации текстовой строки в дату имейте в виду, что:

  • Информация о времени в текстовых значениях игнорируется, как вы можете видеть в строках 2 и 6 на рисунке выше (1). Чтобы превратить такие значения, содержащие даты и время, используйте функцию ЗНАЧЕН.
  • Если в «текстовой дате» пропущен год, ДАТАЗНАЧ подставит текущий год из системного времени вашего компьютера, как показано в строке 3 выше (2).
  • Поскольку Microsoft Excel начинает свой отсчет времени только с 1 января 1900 года, использование ДАТАЗНАЧ с более ранним возрастом приведет к ошибке #ЗНАЧ!.
  • Любое значение, связанное со временем, хранится в Excel как число. Но ДАТАЗНАЧ не может превратить числовое значение в показатель времени и не может обработать текст, который выглядит как число. Для этого вам нужно будет использовать функцию ЗНАЧЕН. И это именно то, что мы собираемся обсудить далее.

Функция ЗНАЧЕН – как конвертировать текст в дату.

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

Синтаксис здесь следующий:

=ЗНАЧЕН(текст)

Где текст – это строка или ссылка на ячейку, содержащую символы, которые вы хотите превратить в число.

Функция ЗНАЧЕН() может обрабатывать как дату, так и время. Последнее преобразуется в десятичную часть числа, как вы можете видеть в строке 11 на следующем скриншоте:

Как видите, результаты те же, что и в примере выше. Только ещё и время определено и обработано правильно.

Однако, к сожалению, такие данные, пригодные для обработки функцией ЗНАЧЕН(), встречаются на практике не слишком часто. Разработчики различного программного обеспечения стремятся проявить фантазию, записывая в свои отчеты дату и время операции. И когда эти отчеты мы хотим обработать в Excel, возникает множество проблем.

Остановимся на наиболее типичных из них и попробуем показать пути решения.

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

Помимо использования функций Excel, о которых мы говорили чуть выше, вы можете выполнить простую математическую операцию, чтобы заставить программу выполнить реорганизацию строки в дату. Обязательное условие: операция не должна изменять ее значение (порядковый номер дня). Звучит немного сложно? Следующие примеры помогут разобраться!

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

  • Сложение: =A1 + 0
  • Умножение: =A1 * 1
  • Деление: =A1 / 1
  • Двойное отрицание: =—A1

Как вы можете убедиться, математические операции могут помочь с датами (строки 3,4.,5,7), временем (строки 2 и 6), а также числами, отформатированными как текст (строка 8). 

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

Как обойти нестандартные разделители

Если запись содержит какой-либо разделитель, отличный от косой черты (/) или тире (-), функции Excel не смогут распознать их как даты и вернут ошибку #ЗНАЧ!. Чаще всего такие «неправильные» разделители – это пробел и запятая.

Чтобы это исправить, вы можете запустить инструмент поиска и замены, чтобы заменить этот неподходящий разделитель, к примеру, косой чертой (/):

  • Выберите все ячейки, которые вы хотите превратить в даты.
  • Нажмите Ctrl + H, чтобы открыть диалоговое окно «Найти и заменить».
  • Введите свой пользовательский разделитель (запятую, к примеру) в поле Найти и косую черту в Заменить.
  • Нажмите Заменить все.

поиск и замена

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

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

=ДАТАЗНАЧ(ПОДСТАВИТЬ(A6;»,»;».»))

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

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

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

Мастер преобразования текста в столбцы — не требующий формул способ преобразования текста в дату.

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

Пример 1. Преобразование простых текстовых строк в даты.

В этом примере мы будем превращать текстовые строки, например 01 01 2015 (день, месяц и год разделены пробелами), в даты.

  1. На рабочем листе выберите столбец, содержимое которого вы хотите конвертировать.
  2. Перейдите на вкладку «Данные», и нажмите «Текст по столбцам».

инструмент "текст по столбцам"

  1. На шаге 1 мастера преобразования текста в столбцы выберите «С разделителями» и нажмите «Далее».
  2. На шаге 2 мастера снимите флажки со всех разделителей и нажмите Далее.
  3. На последнем шаге выберите «Дата» в разделе «Формат данных столбца», укажите в выпадающем списке видсоответствующий вашим данным.  Нажмите «Готово».

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

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

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

Пример 2. Преобразование сложных текстовых строк в даты.

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

  • 8 март 2020 г., воскресенье
  • 8 март 2020 г. 15:00

Вам нужно будет приложить немного больше усилий и использовать рассматриваемый нами инструмент в комбинации с функцией ДАТА.

Важно! Название месяца при использовании этого метода должно быть в именительном падеже!

  1. Выберите нужную область данных.
  2. Вызовите мастер преобразования.
  3. На шаге 1 укажите «С разделителями» и нажмите « Далее» .
  4. На шаге 2 мастера выберите разделители, которые у вас используются.

Например, если вы преобразуете строки, разделенные запятыми и пробелами, например «8 март 2020г., воскресенье», то вам следует выбрать оба разделителя — запятую и пробел.

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

Я немного усложнил наш пример, добавив после порядкового номера года еще букву «г» с точкой. Поэтому эта буква и добавлена в список разделителей.

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

  1. На шаге 3 мастера убедитесь, что все колонки в разделе предварительного просмотра данных имеют формат «Общий». Если это не так, щелкните столбец и выберите Общий в разделе Формат данных.

Заметка. Не выбирайте формат «Дата», поскольку каждый столбец содержит только ее часть. Поэтому Excel не сможет понять, что вы на самом деле хотите сделать.

Если вам не нужен какой-то из столбцов, щелкните по нему и выберите «Пропустить».

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

Как видите, я буду использовать только три первых столбца, а два последних не нужны.

Если вы не хотите перезаписывать исходные данные, укажите, где именно должны быть вставлены результаты — введите адрес верхней левой ячейки в поле «Поместить в…». Выбираем ячейку B2.

Когда закончите, нажмите кнопку Готово.
Как вы видите на скриншоте выше, мы пропускаем четвертую и пятую колонки с точкой и днями недели, разделяем остальные данные на 3 столбца (в общем формате) и вставляем их, начиная с ячейки В2.

На следующем рисунке показан результат с исходными данными в A и разделенными на части данными в В, C и D.

  1. Наконец, вы должны объединить эти кусочки вместе, используя функцию ДАТА (DATE). Синтаксис её не требует особых пояснений:

=ДАТА(год, месяц, день)

В нашем случае год записан в колонке D и день — в В, с этим проблем нет.

Но не так просто с месяцем, потому что это слово, а нужен его номер. К счастью, Microsoft Excel предоставляет специальную функцию МЕСЯЦ (MONTH), которая может изменить название месяца на его порядковый номер:

=МЕСЯЦ(порядковый_номер)

Чтобы функция МЕСЯЦ понимала, что она имеет дело с датой, мы выражаем это так:

=МЕСЯЦ(1&C2)

Здесь C2 содержит название месяца, март в нашем случае. «1 &» добавляется для получения даты (1 март), чтобы формула могла превратить ее в соответствующий номер месяца. Повторюсь еще раз, что месяц должен быть здесь в именительном падеже, что не всегда удобно.

А теперь давайте встроим это выражение в качестве второго аргумента:

=ДАТА(D2;МЕСЯЦ(1&C2);B2)

И вуаля, наши сложные комбинации слов и цифр успешно становятся датами:

Как преобразовать текст в дату при помощи формул.

Разберем еще один способ как превратить сложную формулировку в дату. В колонке А записаны датировки как текстовые выражения вида «08 марта 2020г.». Сразу отметим, что записи должны быть единообразны, то есть все числа сохранены в двузначном виде: 01, 07, 08, 10, 12 и т.д.

Используем формулы работы с символьными значениями — ЛЕВСИМВ, ПРАВСИМВ, ПСТР. Они позволяют извлечь определенное количество символов  с начала текстовой строки, с конца или с середины.

Наша задача – разобрать текст на части, из которых затем «склеить» дату.

Используем формулу:

=ДАТАЗНАЧ(ЛЕВСИМВ(A2;2)&»-«&ПСТР(ЛЕВСИМВ(A2;6);4;3)&»-«&ПСТР(ПРАВСИМВ(A2;6);1;4))

Давайте разбираться, как это работает.

ЛЕВСИМВ(A2;2) — извлекаем 2 первых символа, то есть число.

ПСТР(ЛЕВСИМВ(A2;6);4;3) — получаем 3 первых буквы названия месяца.

ПСТР(ПРАВСИМВ(A2;6);1;4) — выводим 4 цифры года.

И объединяем все это при помощи оператора &, вставляя между этими частями тире.

Можно записать и чуть иначе:

=ДАТАЗНАЧ(ЛЕВСИМВ(A2;2)&»-«&ПСТР(A2;4;3)&»-«&ЛЕВСИМВ(ПРАВСИМВ(A2;6;4))

В английской версии:

=DATEVALUE(LEFT(A2,2)&»-«&MID(A2,4,3)&»-«&LEFT(RIGHT(A2,6),4))

Как извлечь дату из сложного текста при помощи формул?

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

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

Давайте попробуем вытащить дату из пояснения к бухгалтерским проводкам. Как видите, варианты написания могут быть самые разнообразные. Единственное условие – день должен быть записан в виде двузначного числа: 07 в нашем случае.

Формула, при помощи которой можно извлечь дату из текста, выглядит так:

  • если у вас двумя цифрами обозначены день и месяц, и четырьмя – год:

=ПСТР(A2;ПОИСК(«??.??.????»;A2);10)

  • а вот если год – либо последние две, либо все четыре цифры, тогда есть более универсальный вариант:

=—ПСТР(A2;ПОИСК(«??.??.»;A2);8+2*ЕЧИСЛО(-ПСТР(A2;ПОИСК(«.??.»;A2)+6;1)))

Как должен выглядеть результат в ячейке — определите самостоятельно. Как именно – мы уже несколько раз разбирали. Смотрите чуть выше.

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

определяем формат вывода даты при помощи функции ТЕКСТ

Самый базовый вариант представления выглядит так:

=ТЕКСТ(ПСТР(A1;ПОИСК(«??.??.»;A1);8)&ТЕКСТ(ПСТР(A1;ПОИСК(«.??.»;A1)+6;2);»0;;;»);»DD MMMM YYYY»)

Как видите, вся хитрость заключается в правильном описании формата во втором аргументе. «DD MMMM YYYY» означает число, месяц в именительном падеже и год из четырёх цифр. А вот «[$-FC19]DD MMMM YYYY» сделает то же самое, но месяц будет в родительном падеже (7 ноября). Остальные варианты вы видите на рисунке выше. Можете сами выбрать тот, который больше подходит для ваших задач.

Ну а если день у вас может быть записан и одной цифрой, и двузначным числом? И здесь есть универсальный вариант. Правда, более сложный.

Здесь применяем формулу массива.

{=ЕСЛИОШИБКА(—ЛЕВСИМВ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПСТР(A2;МИН(ЕСЛИОШИБКА(НАЙТИ(ТЕКСТ(СТРОКА($A$2:$A$363);{«dd.mm.»;»d.mm.»;»dd/mm/»;»d/mm/»});A2);9^9));10);» «;»    «);»г»;»   «);10);»»)}

Естественно, скобки вводить не нужно: они появятся автоматически после того, как вы в конце ввода формулы нажмете комбинацию клавиш CRTR+SHIFT+ENTER.

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

К примеру, чтобы сразу получить «07 ноября 2019 г.», можно изменить наше выражение следующим образом:

{=ТЕКСТ(ЕСЛИОШИБКА(—ЛЕВСИМВ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПСТР(A2;МИН(ЕСЛИОШИБКА(НАЙТИ(ТЕКСТ(СТРОКА($A$2:$A$363);{«dd.mm.»;»d.mm.»;»dd/mm/»;»d/mm/»});A2);9^9));10);» «;»    «);»г»;»   «);10);»»);»[$-FC19]dd mmmm yyyy г.;@»)}

И не забывайте про формулу массива!

Быстрая конвертация при помощи Специальной вставки.

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

  • Скопируйте любую пустую ячейку (выделите ее и нажмите Ctrl + C).
  • Выберите диапазон с текстовыми значениями, которые вы хотите превратить в даты.
  • Щелкните правой кнопкой мыши выделенную область, выберите «Специальная вставка» и выберите «Сложить» в диалоговом окне:

  • Нажмите кнопку ОК, чтобы завершить работу и закрыть диалоговое окно.

Что вы только что сделали, это попросили Эксель добавить ноль (пустую ячейку) к вашим текстовым датам. Чтобы выполнить это, программа конвертирует текст в число, и, поскольку добавление нуля не приводит к изменению значения, вы получаете именно то, что хотели — порядковый номер дня. 

Как и обычно, далее вы устанавливаете для этих ячеек нужный вид с помощью диалогового окна «Формат ячеек».

Исправление записей с двузначными годами.

Современные версии Microsoft Excel достаточно умны, чтобы обнаружить некоторые очевидные ошибки в ваших данных, или, точнее, сказать, что Эксель считает ошибкой. Когда это произойдет, вы увидите индикатор ошибки (маленький зеленый треугольник) в верхнем левом углу клетки, и, когда вы выделите её, появится восклицательный знак.
При нажатии на восклицательный знак отобразятся несколько параметров, относящихся к вашим данным. В случае двухзначного года программа спросит, хотите ли вы преобразовать его в 19XX или 20XX.

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

Как преобразовать 8-значное число в дату в Excel

Это очень распространенная ситуация, когда дата вводится как 8-значное число, например 10032021. Вам необходимо преобразовать ее в такой вид, который может распознать Excel (то есть, 20.03.2021). В этом случае простое изменение формата ячейки на «Дата» не пройдёт – в результате вы получите ##########.

Чтобы преобразовать это в дату, вам нужно будет использовать функцию ДАТА() в сочетании с функциями ПРАВСИМВ(), ЛЕВСИМВ() и ПСТР(). К сожалению, невозможно составить универсальную формулу, которая будет работать во всех сценариях, потому что исходное значение может быть введено самыми разными способами. Например:

Число Формат Дата
20032021 ддммгггг 20-мар-2021
20210320 ггггммдд
20212003 ггггддмм

Я постараюсь объяснить общий подход к преобразованию таких чисел в даты и приведу несколько примеров формул.

Для начала запомните порядок аргументов функции ДАТА():

=ДАТА(год; месяц; день)

Итак, что вам нужно сделать, так это извлечь год, месяц и день из исходного числа и передать их в качестве соответствующих аргументов функции ДАТА().

Например, давайте посмотрим, как преобразовать число 20032021 (хранящееся в ячейке A2) в 20.03.2021.

  • Извлекаем год. Это последние 4 цифры, поэтому мы используем функцию ПРАВСИМВ, чтобы выбрать последние 4 символа: ПРАВСИМВ(A2; 4).
  • Месяц. Это третья и четвёртая цифры, поэтому мы используем функцию ПСТР, чтобы получить их: ПСТР(A2;3;2). Здесь цифра 3 (второй аргумент) – это начальная позиция, а 2 – это количество символов, которые нужно извлечь.
  • День. Это первые две цифры, поэтому у нас есть функция ЛЕВСИМВ, которая возвращает их: ЛЕВСИМВ(A2;2).

Наконец, вставьте указанные выше элементы в функцию ДАТА(), и вы получите формулу для преобразования числа в дату в Excel:

=ДАТА(ПРАВСИМВ(A2;4);ПСТР(A2;3;2);ЛЕВСИМВ(A2;2))

Следующий скриншот демонстрирует это и еще пару выражений в действии:

Обратите внимание на строку 5 на скриншоте выше:

=ДАТА(«20″&ЛЕВСИМВ(A5;2);ПРАВСИМВ(A5;2);ПСТР(A5;3;2))

 Исходное число (212003) содержит только два символа, обозначающих год (21). Итак, чтобы получить 2021 год, мы объединяем 20 и 21, используя следующую формулу:

«20»&ЛЕВСИМВ(A5;2)

Если вы не сделаете этого, функция ДАТА() возвратит 1921 год, что немного странно, как будто Microsoft все еще живет в 20-м веке :)

В том случае, если число представляет собой последовательность ДДММГГГ или ГГГММДД, то для конвертации в дату можно использовать функцию ТЕКСТ().

К примеру, число 20210320 можно преобразовать при помощи формулы

=—ТЕКСТ(A3;»0000/00/00″)

Сначала в нужных местах мы вставляем разделители — наклонную черту. Получаем текст 2021/03/20. А затем производим с ним математическую операцию: дважды умножаем на минус 1. Видя операцию умножения, Excel пытается превратить содержимое ячейки в число. И ему это успешно удается: получаем 44275. Осталось применить подходящий формат даты.

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

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

Как видите, преобразование текста в дату в Excel — далеко не тривиальная операция, выполняемая одним щелчком мыши. Если вас смущают достаточно сложные формулы, позвольте мне показать вам быстрый и простой способ.

Установите надстройку Ultimate Suite (бесплатную пробную версию можно скачать здесь), переключитесь на вкладку AblebitsTools (в ваш Excel будут добавлены 2 новые вкладки, содержащие более 60 очень полезных инструментов) и активируйте инструмент Text to Datе.

Чтобы преобразовать «дату-как-текст» в обычную дату, выполните следующие действия:

  1. Выделите ячейки с текстовыми данными и нажмите Text to Date .
  2. Укажите порядок дат (дни, месяцы и годы) в выбранных ячейках.
  3. Выберите, нужно ли включать время в преобразованные даты.
  4. Щелкните Преобразовать (Convert).

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

А вот пример конвертации текста в дату и время:

Порядок действий тот же, но нужно не забыть снять галочку, чтобы не исключать время из расчётов.

Подсказка. Если вы выбрали преобразование даты и времени, но единицы времени отсутствуют в результатах, обязательно примените в ячейке формат, в котором отображаются как значения даты, так и времени. Дополнительные сведения см. в статье «Как создавать собственные форматы даты и времени» .

Если вам интересно узнать больше об этом замечательном инструменте, посетите его домашнюю страницу.

Итак, мы с вами рассмотрели как в Excel можно различными способами преобразовать текст в дату. Надеюсь, вам удалось найти метод по своему вкусу.

 Я благодарю вас за чтение и надеюсь вновь увидеть вас на нашем сайте.

Также рекомендуем:

Как перевести время в число В статье рассмотрены различные способы преобразования времени в десятичное число в Excel. Вы найдете множество формул для преобразования времени в часы, минуты или секунды. Поскольку Microsoft Excel использует числовую систему для работы с временем, вы можете…
Формат времени в Excel Вы узнаете об особенностях формата времени Excel, как записать его в часах, минутах или секундах, как перевести в число или текст, а также о том, как добавить время с помощью…
Как быстро посчитать количество слов в Excel В статье объясняется, как подсчитывать слова в Excel с помощью функции ДЛСТР в сочетании с другими функциями Excel, а также приводятся формулы для подсчета общего количества или конкретных слов в…
Как быстро извлечь число из текста в Excel В этом кратком руководстве показано, как можно быстро извлекать число из различных текстовых выражений в Excel с помощью формул или специального инструмента «Извлечь». Проблема выделения числа из текста возникает достаточно…
Как вывести месяц из даты На примерах мы покажем, как получить месяц из даты в таблицах Excel, преобразовать число в его название и наоборот, а также многое другое. Думаю, вы уже знаете, что дата в…
Функция ПРАВСИМВ в Excel — примеры и советы. В последних нескольких статьях мы обсуждали различные текстовые функции. Сегодня наше внимание сосредоточено на ПРАВСИМВ (RIGHT в английской версии), которая предназначена для возврата указанного количества символов из крайней правой части…
Функция ЛЕВСИМВ в Excel. Примеры использования и советы. В руководстве показано, как использовать функцию ЛЕВСИМВ (LEFT) в Excel, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…

Видео

Как обычно, кому надо быстро — смотрим видео. Подробности и нюансы — в тексте ниже:

Как вводить даты и время в Excel

Если иметь ввиду российские региональные настройки, то Excel позволяет вводить дату очень разными способами — и понимает их все:

   «Классическая» форма

  3.10.2006

   Сокращенная форма

3.10.06

   С использованием дефисов

3-10-6

   С использованием дроби

   3/10/6

Внешний вид (отображение) даты в ячейке может быть очень разным (с годом или без, месяц числом или словом и т.д.) и задается через контекстное меню — правой кнопкой мыши по ячейке и далее Формат ячеек (Format Cells):

date1.png

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

16:45

По желанию можно дополнительно уточнить количество секунд — вводя их также через двоеточие:

16:45:30

И, наконец, никто не запрещает указывать дату и время сразу вместе через пробел, то есть 

27.10.2012 16:45

Быстрый ввод дат и времени

Для ввода сегодняшней даты в текущую ячейку можно воспользоваться сочетанием клавиш Ctrl + Ж (или CTRL+SHIFT+4 если у вас другой системный язык по умолчанию).

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

date2.png

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

datepicker.jpg

Если нужно, чтобы в ячейке всегда была актуальная сегодняшняя дата — лучше воспользоваться функцией СЕГОДНЯ (TODAY):

date3.png

Как Excel на самом деле хранит и обрабатывает даты и время

Если выделить ячейку с датой и установить для нее Общий формат (правой кнопкой по ячейке Формат ячеек — вкладка ЧислоОбщий), то можно увидеть интересную картинку:

date4.png

То есть, с точки зрения Excel, 27.10.2012 15:42 = 41209,65417

На самом деле любую дату Excel хранит и обрабатывает именно так — как число с целой и дробной частью. Целая часть числа (41209) — это количество дней, прошедших с 1 января 1900 года (взято за точку отсчета) до текущей даты. А дробная часть (0,65417), соответственно, доля от суток (1сутки = 1,0)

Из всех этих фактов следуют два чисто практических вывода:

  • Во-первых, Excel не умеет работать (без дополнительных настроек) с датами ранее 1 января 1900 года. Но это мы переживем!  ;)
  • Во-вторых, с датами и временем в Excel возможно выполнять любые математические операции. Именно потому, что на самом деле они — числа! А вот это уже раскрывает перед пользователем массу возможностей.

Количество дней между двумя датами

Считается простым вычитанием — из конечной даты вычитаем начальную и переводим результат в Общий (General) числовой формат, чтобы показать разницу в днях:

date5.png

Количество рабочих дней между двумя датами

Здесь ситуация чуть сложнее. Необходимо не учитывать субботы с воскресеньями и праздники. Для такого расчета лучше воспользоваться функцией ЧИСТРАБДНИ (NETWORKDAYS) из категории Дата и время. В качестве аргументов этой функции необходимо указать начальную и конечную даты и ячейки с датами выходных (государственных праздников, больничных дней, отпусков, отгулов и т.д.):

date6.png

Примечание: Эта функция появилась в стандартном наборе функций Excel начиная с 2007 версии. В более древних версиях сначала необходимо подключить надстройку Пакета анализа. Для этого идем в меню Сервис — Надстройки (Tools — Add-Ins) и ставим галочку напротив Пакет анализа (Analisys Toolpak). После этого в Мастере функций в категории Дата и время появится необходимая нам функция ЧИСТРАБДНИ (NETWORKDAYS).

Количество полных лет, месяцев и дней между датами. Возраст в годах. Стаж.

Про то, как это правильно вычислять, лучше почитать тут.

Сдвиг даты на заданное количество дней

Поскольку одни сутки в системе отсчета даты Excel принимаются за единицу (см.выше), то для вычисления даты, отстоящей от заданной на, допустим, 20 дней, достаточно прибавить к дате это число.

Сдвиг даты на заданное количество рабочих дней

Эту операцию осуществляет функция РАБДЕНЬ (WORKDAY). Она позволяет вычислить дату, отстоящую вперед или назад относительно начальной даты на нужное количество рабочих дней (с учетом выходных суббот и воскресений и государственных праздинков). Использование этой функции полностью аналогично применению функции ЧИСТРАБДНИ (NETWORKDAYS) описанной выше.

Вычисление дня недели

Вас не в понедельник родили? Нет? Уверены? Можно легко проверить при помощи функции ДЕНЬНЕД (WEEKDAY) из категории Дата и время.

date7.png

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

Вычисление временных интервалов

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

Нюанс здесь только один. Если при сложении нескольких временных интервалов сумма получилась больше 24 часов, то Excel обнулит ее и начнет суммировать опять с нуля. Чтобы этого не происходило, нужно применить к итоговой ячейке формат 37:30:55:

date8.png

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

  • Как вычислять возраст (стаж) в полных годах-месяцах-днях
  • Как сделать выпадающий календарь для быстрого ввода любой даты в любую ячейку.
  • Автоматическое добавление текущей даты в ячейку при вводе данных.
  • Как вычислить дату второго воскресенья февраля 2007 года и т.п.

Дата из текста (ДАТАИЗСТРОКИ)

Описание работы

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

Извлечь в данном случае дату из текста стандартными методами крайне сложно.

С помощью функции на VBA =ДАТАИЗСТРОКИ это сделать очень просто. Функция найдет дату в тексте вне зависимости от формата ее записи и расположения ее в строке. Также распознаются даты на русском и английском языке.

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

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

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

Синтаксис функции

Функция =ДАТАИЗСТРОКИ(ТЕКСТ;[En]) имеет два аргумента:

  • ТЕКСТ — Текст, из которого необходимо извлечь дату
  • [En] — Необязательный параметр. Если дата содержит наименование месяца на английском языке, укажите данный параметр равный 1. По умолчанию равно 0.

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

Excel найти дату в тексте

Преобразовать дату в текст Excel.

Узнать дату в Excel по дню недели, т.д.

Отображение дат в виде дней недели

​ текст (функция так​ «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило».​преобразование в Excel даты в текст;​3.​ «Текст содержит…».​Для выполнения этой задачи​ «Автоматическая дата в​ (В4) в мае​ изменений в Excel».​

​ «Текст». Диалоговое окно​​ вычисления в зависимости​ 02.01.1900 г имеет​ начинается у людей​: может лучше так?​ является датой? Дата​vikttur​ и опишите что​ же позволяет быстро​Выберите ниже: «Использовать формулу​применение в формулах Excel текста;​

Форматирование ячеек для отображения дня недели

​Выделение сегодняшней даты в​Теперь пишем наш​ используется функция ТЕКСТ.​ Excel».​

​ месяце (В3) в​​Можно​​ функции «Текст» заполнили​ от формата числа,​​ порядковый номер 2,​​ куда раньше, чем​​ =И(ЯЧЕЙКА(«формат»;A1)=»D1″;ЕЧИСЛО(A1))если ввести текст,​​ вводится в формате​​: Даты по возрастанию?​​ нужно найти может​

​ найти дату в​​ для определения форматируемых​​поиск текста в Excel.​​ Excel.​​ текст, который должен​​Скопируйте указанные ниже данные​​Предположим, что вместо фактической​​ 2015 году (В2).​​узнать дату в​ так.​ текста, т.д. Если​ дата 27.01.2015 г.​​ у Excel.​​ среагирует сразу​ дд.мм.гггг. Спасибо заранее!​=МАКС(ИНДЕКС(‘2012′!$C$2:$N$6;ПОИСКПОЗ(B4;’2012’!$B$2:$B$6;);))​

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

​ попроще формула найдется.​ тексте Excel);​

​ ячеек».​Решение всех этих (и​

​ выделять ячейку. В​

​Можно написать разные​

​Нажимаем «ОК». Получилась​

​ формат чисел стоит​

​ имеет порядковый номер​

​Однако по-хорошему формула​

​ЕЧИСЛО – если число​

​Чтобы найти дату в​ многих других) вопросов​ таблица с датами.​ нашем примере –​

Выделить дату, день недели в Excel при условии.

​ сможете найти в​ окончания обучения» ячейка​ заливки – это​A​ ​ «понедельник». Существует несколько​ ячейках В6 и​ дней или была​
​ по столбцу. Получилось​ этом читайте в​ привычный для нас​
​ формат соблюден и​ в первых днях​ так как в​ мой вариант со​ стоит дата. Нужно,​ЕОШ – если ошибка;​

​ нажмите на кнопку​ меню «ТЕКСТ». Надеемся​ с сегодняшней датой​ цвет, которым будут​
​Дата​ способов отображения дат​ В7. Получилось так.​ некоторое время назад,​ так.​
​ статье «Преобразовать текст​ формат даты, нужно​ при вводе отрицательных​ ​ начала 1900 года.​

​ ячейке может быть​ СМЕЩЕНИЕМ​ чтобы эта дата​ЕОШИБКА – если ошибка;​
​ «Формат», чтобы задать​​ что наши статьи​ окрасилась. Выделяем это​
​ окрашиваться выделенные ячейки.​19-фев-2007​

​ в виде дней​В ячейке В6​ пр. Это может​Даты в столбце​ в число Excel».​ установить в ячейке​ чисел(при системе дат​The_Prist​ введено просто чилсо​»=МАКС(СМЕЩ(ДВССЫЛ(АДРЕС(ПОИСКПОЗ(B4;’2012′!B:B;0);3;;;»2012″));0;1;1;12))»​ соответствовала последней заполненной​ЕСЛИОШИБКА – если ошибка​

​ желаемый цвет заливки​ о преобразовании текста​ столбец (D2:D6). Заходим​ Если мы нажмем​3-янв-2008​ недели.​ стоит формула, написанная​ пригодиться при планировании​ B написаны как​Теперь рассмотрим,​ формат даты. Какими​ от 1900 года)​: Вить, если это​ тоже — например​Владимир​ ячейке в строке​ (это не логическая​

Операции над текстом в Excel

​ для ячеек. Например,​ в Excel помогут Вам​ в «Условное форматирование»​ на стрелку и​Формула​Примечание:​ в ячейке С6.​ поставок, сроков работ,​ текст (текстовый формат​

​как преобразовать порядковый номер​ способами вызвать диалоговое​ ячейка будет подсвечена,​

  • ​ число 2 будет​
  • ​ 55​
  • ​: Если фамилии не​ Смирнов на листе​
  • ​ функция, но ее​ зеленый. И нажмите​
  • ​ и сократят время​
  • ​ и выбираем «Правила​
  • ​ из списка выберем​

​Описание (результат)​ Представленные в этой статье​В ячейке В7​ при оформлении договора,​значений​ дат в формат​ окно и сменить​ т.к. текст там​ в формате даты​Владимир​ нужно искать, то:​

Как найти и выделить неправильное значение и формат даты в Excel

​ «2012».​ легко оптимизировать под​ ОК на всех​ работы:)​ выделения ячеек» -​ строку «1,2,3,4,5», то​=ТЕКСТ(A2;»дддд»)​ снимки экрана созданы​ стоит формула, написанная​ т. д.​). Формат​ «Дата»​ формат, смотрите в​ дату даже рядом​ — не вижу​:​=ПРОСМОТР(7^7;1/(‘2012′!C2:N2>0);’2012’!C2:N2)​ber$erk​ данную задачу);​ открытых окнах.​Если ячейки содержат неправильный​ «Дата…». Из списка​ выйдет окно, в​Вычисление дня недели для​ в Excel 2016. Если​

Поиск формата текста вместо даты в Excel

​ в ячейке С7.​Как узнать дату в​в ячейках​.​ статье «Формат Excel»​ не будет напоминать.​ противоречий.​=ЯЧЕЙКА(«формат»;A1)=»D1″​

​bvb​: «=МАКС(ДВССЫЛ(АДРЕС(ПОИСКПОЗ(B4;’2012′!B:B;0);3;;;»2012″)):ДВССЫЛ(АДРЕС(ПОИСКПОЗ(B4;’2012′!B:B;0);14;;;»2012»)))»​ЕПУСТО – если пусто;​

  1. ​Как видно на рисунке​ формат значений –​ правил выбираем –​
  2. ​ котором можно выбрать​ указанной даты и​ вы используете другую​
  3. ​Здесь мы вычисляли​Excel​(внешний вид данных)стоит​У нас такая​ тут.​vikttur​Другой вопрос, что​Самир Мамедов​: Еще раз, всем​bvb​ЕЛОГИЧ – если логическое​

​ все даты в​ это может привести​ «Сегодня». Получилось так.​ цвет и шрифта,​

​ возврат его полного​ версию, то в​ дату по дню​.​ – «Общий». Если​ таблица с датами,​Уточним еще один момент​: Да не об​ при смене только​: Дело в том,​ спасибо!​: Блин, работает! Огромное​ значение;​ формате текст выделились​ к ошибочным вычислениям​Из списка правил​ другие параметры и​ названия (понедельник)​ ней может быть​ недели. Но в​Например, нам нужно​ нужно, то можно​ написанными порядковыми номерами.​-​ этом предупреждаю!​ формата(без изменения данных​

​Появился вопрос. Если​ спасибо! Завтра буду​ЕНД – если недоступное​ цветом:​ в формулах. Например,​

  • ​ можно выбрать другое​ цвет.​=ТЕКСТ(A3;»ддд»)​ немного другой интерфейс,​ Excel можно проделать​
  • ​ узнать дату, которая​ изменить формат ячеек​Преобразуем порядковые номера дат​формат даты в Excel.​
  • ​Добавить проверку на​
  • ​ в ячейке) -​
  • ​ ячейке А1 стереть​ в строке все​ тестить более углубленно,​ значение (#Н/Д);​В условиях форматирования мы​
  • ​ вместо типа значения​
  • ​ правило. Например, чтобы​Нажимаем «ОК». Так​
  • ​Вычисление дня недели для​ но если не​
  • ​ и обратную операцию​ будет в третий​
  • ​ «Общий» на формат​ в привычные для​
  • ​В Excel два​
  • ​ число >= (возможно,​

​ формула не сработает.​ дату и ввести​ строки пустые, то​

Поиск последней даты

​ но на первый​​ЕНЕЧЁТ – если нечетное​
​ использовали простую функцию​ «Дата», ячейка содержит​
​ ячейка с датой​ же устанавливаем правило​ указанной даты и​ указано иное, функции​
​ — определить по​ вторник марта 2015​ «Текстовый».​

​ нас даты.​ формата – формат​ и​Предлагаю вариант с​ например текст, то​ формула выдает 00.01.1900​
​ взгляд все ок)​
​ значение;​ =ЕТЕКСТ(), у которой​ тип значения «Текст».​ окончания срока окрашивалась​

​ с текстом «Вс».​​ возврат его сокращенного​ будут такими же.​ дате день недели.​ г.​

​Как скопировать дату​​Если нужно изменить​ячейки​The_Prist​ подсветкой через УФ​ его формат (формат​Можно ли сделать​ikki​ЕЧЁТ – если четное​ всего только 1​

​ При подготовке больших​​ за несколько дней​

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

​ формат дат в​​и формат​

​: Вить, да поняли​​ — тогда сработает​ ячейки А1) опять​ так, чтобы вместо​
​: =ПРОСМОТР(999999;ИНДЕКС(‘2012′!$B$2:$N$6;ПОИСКПОЗ($B4;’2012’!$B$2:$B$6;0);))​
​ значение;​
​ аргумент – ссылка​

​ объемов данных следует​ раньше, за месяц,​Заполнять дни недели можно​

​Условное форматирование в Excel​​ которые должны отображаться​
​ в статье «День​

​Пояснение таблицы:​​ в формат «Дата»,​ этом же столбце,​значения​ мы все это,​ даже при тупом​ останется ДАТА, что​ этого она выдавала​Михаил С.​ЕССЫЛКА – если ссылка;​ на проверяемую ячейку.​ выполнить проверку всех​ в течение месяца,​ копированием. Смотрите статью​поможет выделить день​ в виде дней​ недели по дате​

​Год​​ смотрите в статье​
​ то выделяем ячейки,​

​, написанного в ячейке.​​ не горячись. Но​ изменении формата. Если​
​ приводит к неправильному​ 0 или пустую​: Блиииин, у меня​

​ЕФОРМУЛА – если формула.​

​ Арес ссылки в​​ типов значений на​ т.д. В одних​

​ «Копирование в Excel».​

​ недели, рабочие или​​ недели.​ в Excel».​
​– год, в​ «Преобразовать текст в​ устанавливаем нужный формат​Формат ячейки​
​ ведь автор пока​ не дата -​ результату.​ ячейку?​ подсмотрел, только тему​

​При желании можете проверить​​ аргументе функции ЕТЕКСТ​

​ соответствие определенному формату.​​ и тех же​

​Так можно выделять​​ выходные дни, дату.​На вкладке​
​Как к дате​ котором определяем дату.​

​ дату Excel».​​ дат.​в​ этого не просил​ ячейка будет с​Сергей​ShAM​ открыл, нарисовал формулу​ все функции в​ должен быть относительным,​ Например, таблица заполнялась​ ячейках может быть​

Как проверить является ли данное в ячейке ДАТОЙ без макроса

​ ячейки с любым​​ Здесь перечислены варианты​
​Главная​ прибавить рабочие дни​Месяц​Бывает, что в​Если нужно перенести​Excel​ — откуда нам​

​ красной заливкой.​​: показали бы в​

​: .​​=ПРОСМОТР(999999;ИНДЕКС(‘2012′!$C$2:$N$6;ПОИСКПОЗ($B4;’2012’!$B$2:$B$6;);))​ действии экспериментальным путем.​ так как будет​ данными из разных​ установлено несколько правил​ текстом.​

​ формул настройки ячеек​​щелкните раскрывающийся список​​ или вычесть, смотрите​

​– порядковый номер​​ ячейках дата написана​ эти данные в​– это внешний​ знать надо оно​Бахтиёр​ примере что проверяете​ShAM​практически один-в-один​bvb​ проверятся каждая ячейка​

​ источников где в​​ условного форматирования. как​2.Например, нам нужно​ таблицы Excel для​ в поле​ в статье «Как​ месяца. (май -​ одним числом (например,​ другой столбец, то​ вид данных в​ или нет? Особенно​: +1​ дата для экселя​: или через формат.​:)​: Добрый день!​

​ выделенного диапазона. Если​​ разный способ фиксировалась​ выделить данные по​ в большой таблице​ выделения их по​Числовой​ посчитать рабочие дни​

​ пятый месяц в​​ так. 20160112). Нам​ выделяем ячейки, копируем​

​ ячейке — шрифт,​​ если учесть, что​vikttur​ число, если у​

​bvb​​Просто увидел эти​Проблема следующая. Написал​ текущая проверяемая ячейка​ дата. С такой​ условию, смотрите в​

​ найти ячейки с​​ условию.​, выберите пункт​ в Excel» тут.​ году, декабрь -​ нужно преобразовать это​
​ в другой столбец​ размер шрифта; число,​ автора вроде как​: И я не​ вас идут данные​
​: Более чем развернутый​ ДВССЫЛ, АДРЕС и​ две формулы:​ содержит текст (а​ таблицей нельзя выполнять​ статье «Как выделить​ ошибками (#ЗНАЧ!, #ССЫЛКА!,​1.​

​Другие числовые форматы​​Как посчитать количество​

​ 12й, т.д.).​​ число в дату,​ и устанавливаем формат​ записанное с разрядами;​ полностью устроил ответ​
​ вижу. Но вопрос:​ вперемешку реально число​ ответ!) Спасибо!​ ужаснулся :)​

​1. ПОИСКПОЗ(B16;’2012′!C:C;0) Находит​​ не дату) –​ различных вычислений. Визуально​ ячейки в Excel».​ #Н/Д). У нас​Выделить в Excel день​
​и откройте вкладку​ дней между датами​День недели​ разделить точками год,​ ячеек «Дата».​ ​ в каком месте​ из 7-го сообщения,​ нужна ли такая​ и число (дата)​p.s. очень стыдно​ikki​
​ на другом листе​ это неправильное значение​
​ сложно заметить где​
​По сравнению с возможностями​ такая таблица.​ недели.​Число​ без праздников, например,​- порядковый номер​ месяц, день. Как​Здесь в столбце B​ ячейки будут написаны​

​ а мы так​​ дата автору темы?​ то проблематично что​
​ быть глупым(​: Михаил С., :)))​ номер строки по​

​ Excel. Тогда функция​​ в неправильном формате​ Excel по обработке​Выделяем таблицу, заходим​Например, выделим субботы​.​ отпускные, как посчитать​ дня в неделе​ это сделать, смотрите​ дата стоит в​ данные – слева,​ — разминаемся​ЦитатаСамир Мамедов написал:​ то проверить (мое​bvb​

Поиск в MS EXCEL ДАТЫ ближайшей к заданной

Пусть имеется диапазон с датами. Найдем дату из этого диапазона, которая является ближайшей к заданной. Решение этой задачи аналогично решению, изложенного в статье Поиск ЧИСЛА ближайшего к заданному.

Пусть в диапазоне A4:A12 имеется список дат. Будем в нем искать дату из ячейки С4. Если диапазон не содержит искомого значения, то будет возвращено ближайшее значение.

Искомая дата необязательно должна совпадать с какой-нибудь датой или даже находиться в диапазоне поиска (см. Файл примера ):

Решение

Результат поиска

Примечание

ищется наибольшее значение, которое меньше, чем искомое значение (если искомая дата меньше, чем минимальное значение из диапазона, то будет возвращена ошибка #Н/Д)

если столбец не отсортирован по возрастанию, то результат непредсказуем

ищется ближайшая к критерию дата (если обнаружено 2 ближайших числа (одно больше, другое меньше критерия), то выводится то, которое расположено выше (номер строки меньше))

столбец м.б. не отсортирован

= ИНДЕКС(A4:A12; ПОИСКПОЗ(МАКС(ЕСЛИ(A4:A12 =C4;A4:A12;»»)); $A$4:$A$12;0);1)

ищется наименьшее значение, которое больше, чем искомое значение (если искомая дата больше, чем максимальное значение из диапазона, то будет возвращена ошибка #Н/Д)

столбец м.б. не отсортирован

ищется ближайшая к критерию дата (если обнаружено 2 ближайших числа (одно больше, другое меньше критерия), то выводится то, которое больше

столбец м.б. не отсортирован

ищется ближайшая к критерию дата (если обнаружено 2 ближайших числа (одно больше, другое меньше критерия), то выводится то, которое меньше

столбец м.б. не отсортирован

Последние 5 решений реализованы с использованием формул массива. Для пошагового просмотра хода вычислений используйте клавишу F9.

Как видно из таблицы, применение функции ВПР() со значением аргумента интервальный_просмотр равным ИСТИНА, имеет недостатки. Во-первых, найденное значение м.б. далеко не ближайшим (задав в качестве критерия дату 06.02.2009 получим не ближайшую дату 07.02.2009, а наибольшее значение, которое меньше, чем искомое значение, т.е. 05.01.2009). Во-вторых, если искомая дата меньше, чем минимальное значение из диапазона, то будет возвращена ошибка #Н/Д. В-третьих, требуется сортировка списка, что не всегда удобно.

Хорошим решением является формула массива
=ИНДЕКС(A4:A12; ПОИСКПОЗ(МИН(ABS(A4:A12-C4));ABS(A4:A12-C4);0))

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

Совет: т.к. дата в MS EXCEL хранится в числовом виде (см. статью Как Excel хранит дату и время), то формулы для поиска ближайшего числа также будут работать для дат (см. раздел Ближайшее ЧИСЛО).

Поиск дат в тексте документа Word

Поиск дат формата ДД.ММ.ГГГГ в тексте документа при помощи стандартного поиска, регулярного выражения и надстройки, написанной на языке VBA.

Поиск заданной даты в текстовом документе

Чаще всего при поиске какого-либо значения, даты здесь не исключение, используется самый простой способ – стандартный поиск. Чтобы воспользоваться поиском, необходимо перейти на вкладку «Главная» в приложении Word и в группе кнопок «Редактирование» зайти в меню кнопки «Найти» и выбрать пункт «Найти», в результате чего появляется панель «Навигация», которую можно поместить в левую либо правую часть окна. Аналогичный результат можно получить при помощи горячих клавиш Ctrl+F (сокращение от слова Find). Остается внести искомое значение в специальное поле для поиска и получить результат в виде выделенных цветом найденных значений.

Поиск всех дат в документе

Заданную дату, как и любое другое значение, найти в тексте документа не составило труда, а как найти все даты в тексте документа? Рассмотрим решение этой задачи на примере дат самого распространенного формата ДД.ММ.ГГГГ. Для реализации сложного поиска значений с проверкой на соответствие заданному шаблону можно использовать регулярные выражения. Для даты в формате ДД.ММ.ГГГГ регулярное выражение можно написать в виде [0-9]<2>.[0-9]<2>.[0-9]<4>, где после первой пары символов из интервала от нуля до девяти стоит точка, затем такая же пара символов с точкой и в конце выражения еще четыре символа, представляющие собой цифры. Чтобы найти все даты в документе остается перейти в диалоговое окно расширенного поиска, в параметрах поиска включить использование подстановочных знаков и в строку поиска ввести регулярное выражение. Окно расширенного поиска можно вызвать из меню кнопки «Найти» либо из выпадающего списка в строке поиска в панели «Навигация».

Поиск определенных дат по условию

При работе с отчетами может возникать задача поиска дат с проверкой на соответствие заданному условию, например, поиск просроченных дат в плане поставки оборудования. В этом случае задача еще несколько усложняется и решить ее можно при помощи программного кода на встроенном в приложения Office языка программирования Visual Basic for Application.

В диалоговом окне программы пользователю достаточно задать контрольную дату в формате ДД.ММ.ГГГГ, цвет выделения и одно из условий, а программа произведет поиск всех дат в документе (либо в выделенной его части), сравнение их с контрольной датой и выделение заданным цветом при выполнении выбранного условия.

Видео по работе с надстройкой

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

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

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

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

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

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

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

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

В Excel 2007 нажмите кнопку Microsoft Office и выберите Параметры ExcelExcel 2007формулы.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Выполните указанные ниже действия:

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

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

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

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

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

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

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

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

Сочетание клавиш: Кроме того, можно нажать клавиши CTRL + C.

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

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

На вкладке Главная нажмите кнопку вызова всплывающего окна рядом с полем число.

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

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

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

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

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

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Работа excel с клавиатуры
  • Работа excel с другими программами
  • Работа excel с api
  • Работа excel несколько условий
  • Работа excel несколько пользователей

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии