Как найти дату в ячейке excel
Смотрите также . узнать что текст мнение), один из: Столкнулся с ещеikki содержимому ячейки В16
ЕТЕКСТ возвращает значение введена неправильная дата числовых данных, возможности в «Условное форматирование»
и воскресенья. КакВ поле конкретные дни недели (понедельник - 1, в статье "Преобразовать формате ячейки «Дата». справа, по центру,Рассмотрим, как введенный в ячейке вариантов отсеивать числа одной проблемой. Нужно,
: кстати, у Михаила2. ИНДЕКС('2012'!9:9;МАКС(СТОЛБЕЦ('2012'!9:9)*НЕ(ЕПУСТО('2012'!9:9)))) Находит ИСТИНА и к с точки зрения Excel по преобразованию и выбираем «Создать преобразовать даты вЧисловые форматы между датами и вторник - 2, число в дату
Excel посчитает даты, выровнены, т.д.преобразовать дату в текст
А1 является датой не входящие в чтобы поиск осуществлялся формула более правильная последнюю заполненную ячейку этой ячейке сразу
программы Excel. и анализу текстовых правило». дни недели, смотритевыделите пункт многое другое, смотрите т.д.). Excel". записанные и порядковымиНапример, при числовом ExcelThe_Prist диапазон определенных нужных
на нескольких листах - у него в строке 9 же присваивается новыйЧтобы быстро найти ошибочные значений представлены слабо,Выбираем «Сравнить столбцы в статье "День(все форматы) в статье «ПосчитатьПорядковый номер дня вВ Excel можно номерами, но нам формате ячеек данные. Нам нужно, чтобы: Вить, так ты дат и то и выдавал самую ищется последнее непустоеЗадача совместить эти формат (зеленая заливка). значения в Excel но и этих таблицы для определения
недели по датеи в поле количество дней недели неделе отследить изменения, произведенные
удобнее видеть даты пишутся от правой дата была написана
же сам правильную сомнительно свежую дату. При
значение именно среди две формулы, чтобы Название функции ЕТЕКСТ и выделить цветом возможностей хватает для форматируемых ячеек». В
Excel". У насТип между датами в– какой день ранее. Например, сотрудник в формате «Дата». границы ячейки, а
в текстовом формате. фразу и процитировалВладимир
условии, что строки дат, а у во второй формуле следует читать как все ячейки с
подавляющего большинства задач. строке «Формат…» пишем
есть строка ввведите значение Excel».
недели по счету без вашего ведомаПреобразовать дату в текст при текстовом форматеСначала вспомним, как - узнать является: Если Вы не (по которым проводится меня еще и вместо номера строки сокращение от двух неправильным форматом, будемЧасто пользователям необходимо решение формулу. =ЕОШИБКА(B9) таблице с наименованиемддддВ Excel можно в месяце (третий изменил некоторые цифры. в Excel. – от левой записаны и как ли значение датой. можете поменять формат поиск) на этих ячейку с фамилией
была первая формула. слов: Если ТЕКСТ использовать условное форматирование. стандартных задач надВыбираем цвет, которым дней недели.
, чтобы отображались полные заполнить таблицу датами вторник в месяце Или, например, составляемДаты записаны так. границы ячейки. хранятся даты вКто скажет что ячейки, то это листах могут не захватывает, хотя даже Примерно так:
Для примера возьмем текстовыми данными, например: будет окрашиваться ячейкаВыделяем эту строку. На названия дней недели с разным периодом мае, первый четверг отчет. Нам нужно Формат ячеек –Формат значения ячейки Excel Excel. 02.01.1900 это не совсем другой уже
Узнать дату в 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);
Пример
ячеек».Решение всех этих (и
У нас такая
выделять ячейку. В
на пустой лист.
даты «3 октября
Можно написать разные
Нажимаем «ОК». Получилась
формат чисел стоит
имеет порядковый номер
Однако по-хорошему формула
ЕЧИСЛО – если число
Чтобы найти дату в многих других) вопросов таблица с датами. нашем примере –
Выделить дату, день недели в Excel при условии.
1 2005 г.» в формулы. Мы написалина любой день такая формула. =ТЕКСТ(А7;"ДД.ММ.ГГГГ") не верный, то – 42031, т.д. должна выглядеть так:: Но не среагирует,
: ЕЧИСЛО . : Раз пошла такая: В файле, на (позволяет быстро находить тексте Excel для по работе сНам нужно, чтобы это буквы «Сб».2 ячейке для даты две формулы для недели, которая наступит Копируем формулу из формула считать неЧтобы преобразовать этот=И(ЯЧЕЙКА("формат";A1)="D1";ЕЧИСЛО(A1);НЕ(ЕОШ(ПОИСК(". ";ТЕКСТ(A1;"ДД.мм.ГГГГ"))))) если ввести число.Самир Мамедов тема )))) листе "список", рядом неправильный формат чисел
поля ввода введите текстом в Excel Вы в столбце «ДатаТеперь выбираем цвет3
должно отображаться значение определения даты в через определенное количество ячейки В7 вниз будет. Подробнее об порядковый номер втогда будет и Например, 2. Это: ЕЧИСЛО не подходит,Вот еще один с фамилией Смирнов в Excel); формулу: =ЕТЕКСТ(A2) и
сможете найти в окончания обучения» ячейка заливки – это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")))"ЕПУСТО – если пусто;
- Как видно на рисунке формат значений – правил выбираем –
- котором можно выбрать указанной даты и вы используете другую
- Здесь мы вычислялиExcel(внешний вид данных)стоитУ нас такая тут.viktturДругой вопрос, чтоСамир Мамедов: Еще раз, всемbvbЕЛОГИЧ – если логическое
все даты в это может привести «Сегодня». Получилось так. цвет и шрифта,
возврат его полного версию, то в дату по дню. – «Общий». Если таблица с датами,Уточним еще один момент: Да не об при смене только: Дело в том, спасибо!: Блин, работает! Огромное значение; формате текст выделились к ошибочным вычислениямИз списка правил другие параметры и названия (понедельник) ней может быть недели. Но вНапример, нам нужно нужно, то можно написанными порядковыми номерами.- этом предупреждаю! формата(без изменения данных
Появился вопрос. Если спасибо! Завтра будуЕНД – если недоступное цветом: в формулах. Например,
формула не сработает. дату и ввести строки пустые, то
Поиск последней даты
но на первыйЕНЕЧЁТ – если нечетное
использовали простую функцию «Дата», ячейка содержит
ячейка с датой же устанавливаем правило указанной даты и указано иное, функции
- определить по вторник марта 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Просто увидел этиПроблема следующая. Написал текущая проверяемая ячейка дата. С такой условию, смотрите в
Другие числовые форматыКак посчитать количество
12й, т.д.). число в дату, и устанавливаем формат записанное с разрядами; полностью устроил ответ
вижу. Но вопрос: вперемешку реально число ответ!) Спасибо! ужаснулся :)
а мы так дата автору темы? то проблематично что
быть глупым(: Михаил С., :))) номер строки по
Excel. Тогда функция в неправильном формате Excel по обработкеВыделяем таблицу, заходимНапример, выделим субботы. отпускные, как посчитать дня в неделе это сделать, смотрите дата стоит в данные – слева, - разминаемсяЦитатаСамир Мамедов написал: то проверить (моеbvb
Доброго времени суток.
Прошу помощи в решения данного вопроса.
Смысл задачи:
Есть строка в таблице: Счет № 19 от 15 Февраля 2016 г.
Требуется вернуть дату из этой строки: 15 Февраля 2016 г.
--------------------------------------------------
Нашёл решение, но оно не подходит для данного примера
При помощи функции:
Можно вернуть дату но при условии того что в искомой строке дата будет в формате:
Счет № 19 от 15.02.2016 г.
--------------------------------------------------
Вопрос: Как вернуть дату в тексте ячейки Excel при формате даты: от 15 Февраля 2016 г.
Доброго времени суток.
Прошу помощи в решения данного вопроса.
Смысл задачи:
Есть строка в таблице: Счет № 19 от 15 Февраля 2016 г.
Требуется вернуть дату из этой строки: 15 Февраля 2016 г.
--------------------------------------------------
Нашёл решение, но оно не подходит для данного примера
При помощи функции:
Можно вернуть дату но при условии того что в искомой строке дата будет в формате:
Счет № 19 от 15.02.2016 г.
--------------------------------------------------
Вопрос: Как вернуть дату в тексте ячейки Excel при формате даты: от 15 Февраля 2016 г. Dirc
Можно вернуть дату но при условии того что в искомой строке дата будет в формате:
Счет № 19 от 15.02.2016 г.
--------------------------------------------------
Вопрос: Как вернуть дату в тексте ячейки Excel при формате даты: от 15 Февраля 2016 г. Автор - Dirc
Дата добавления - 18.02.2016 в 12:57
=ПРОСМОТР(9^9;--ПРАВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;"ая";"ай ");"я ";" ");" г.";"");СТРОКА($10:$15)))
=ПРОСМОТР(9^9;--ПРАВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;"ая";"ай ");"я ";" ");" г.";"");СТРОКА($10:$15)))
=ПРОСМОТР(9^9;--ПРАВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;"ая";"ай ");"я ";" ");" г.";"");СТРОКА($10:$15)))
О функции СТРОКА() можно прочитать в справке, а фрагмент формулы с этой функцией возвращает массив чисел <10:11:12:13:14:15>
По последнему вопросу. В моей формуле надо вместо " г." вставить " года"
Если формулу делать универсальной, например под эти два варианта, еще надо "»" заменить на пусто10:11:12:13:14:15>
О функции СТРОКА() можно прочитать в справке, а фрагмент формулы с этой функцией возвращает массив чисел <10:11:12:13:14:15>
По последнему вопросу. В моей формуле надо вместо " г." вставить " года"
Если формулу делать универсальной, например под эти два варианта, еще надо "»" заменить на пусто AlexM 10:11:12:13:14:15>
Все классические функции поиска и подстановки типа ВПР (VLOOKUP) , ГПР (HLOOKUP) , ПОИСКПОЗ (MATCH) и им подобные имеют одну важную особенность - они ищут от начала к концу, т.е. слева-направо или сверху-вниз по исходным данным. Как только находится первое подходящее совпадение - поиск останавливается и найденным оказывается только первое вхождение нужного нам элемента.
Что же делать, если нам требуется найти не первое, а последнее вхождение? Например, последнюю сделку по клиенту, последний платёж, самую свежую заявку и т.д.?
Способ 1. Поиск последней строки формулой массива
Если в исходной таблице нет столбца с датой или порядковым номером строки (заказа, платежа. ), то наша задача сводится, по сути, к поиску последней строки, удовлетворяющей заданному условию. Реализовать подобное можно вот такой формулой массива:
- Функция ЕСЛИ(IF) проверяет по очереди все ячейки в столбце Клиент и выводит номер строки, если в ней лежит нужное нам имя. Номер строки на листе нам даёт функция СТРОКА(ROW) , но поскольку нам нужен номер строки в таблице, то дополнительно приходится вычитать 1, т.к. у нас в таблице есть шапка.
- Затем функция МАКС(MAX) выбирает из сформированного набора номеров строк максимальное значение, т.е. номер самой последней строки клиента.
- Функция ИНДЕКС(INDEX) выдаёт содержимое ячейки с найденным последним номером из любого другого требуемого столбца таблицы (Код заказа).
Всё это нужно вводить как формулу массива, т.е.:
- В Office 365 с последними установленными обновлениями и поддержкой динамических массивов - можно просто жать Enter .
- Во всех остальных версиях после ввода формулы придется нажимать сочетание клавиш Ctrl + Shift + Enter , что автоматически добавит к ней фигурные скобки в строке формул.
Способ 2. Обратный поиск новой функцией ПРОСМОТРХ
Я уже писал большую статью с видео про новую функцию ПРОСМОТРХ (XLOOKUP) , которая появилась в последних версиях Office на замену старушке ВПР (VLOOKUP) . При помощи ПРОСМОТРХ наша задача решается совершенно элементарно, т.к. для этой функции (в отличие от ВПР) можно явно задавать направление поиска: сверху-вниз или снизу-вверх - за это отвечает её последний аргумент (-1):
Способ 3. Поиск строки с последней датой
Если в исходных данных у нас есть столбец с порядковым номером или датой, играющей аналогичную роль, то задача видоизменяется - нам требуется найти уже не последнюю (самую нижнюю) строку с совпадением, а строку с самой поздней (максимальной) датой.
Как это сделать с помощью классических функций я уже подробно разбирал, а теперь давайте попробуем использовать мощь новых функций динамических массивов. Исходную таблицу для пущей красоты и удобства тоже заранее преобразуем в "умную" с помощью сочетания клавиш Ctrl + T или команды Главная - Форматировать как таблицу (Home - Format as Table) .
С их помощью этой "убойной парочки" наша задача решается весьма изящно:
- Сначала функция ФИЛЬТР(FILTER) отбирает только те строки из нашей таблицы, где в столбце Клиент - нужное нам имя.
- Потом функция СОРТ(SORT) сортирует отобранные строки по убыванию даты, чтобы самая последняя сделка оказалась сверху.
- Функция ИНДЕКС(INDEX) извлекает первую строку, т.е. выдает нужную нам последнюю сделку.
- И, наконец, внешняя функция ФИЛЬТР убирает из результатов лишние 1-й и 3-й столбцы (Код заказа и Клиент) и оставляет только дату и сумму. Для этого используется массив констант >, определяющий какие именно столбцы мы хотим (1) или не хотим (0) выводить.
Способ 4. Поиск последнего совпадения в Power Query
Ну, и для полноты картины, давайте рассмотрим вариант решения нашей задачи обратного поиска с помощью надстройки Power Query. С её помощью всё решается очень быстро и красиво.
1 . Преобразуем нашу исходную таблицу в "умную" с помощью сочетания клавиш Ctrl + T или команды Главная - Форматировать как таблицу (Home - Format as Table) .
2 . Загружаем её в Power Query кнопкой Из таблицы/диапазона на вкладке Данные (Data - From Table/Range) .
3 . Сортируем (через выпадающий список фильтра в шапке) нашу таблицу по убыванию даты, чтобы самые последние сделки оказались сверху.
4 . На вкладке Преобразование выбираем команду Группировать по (Transform - Group By) и задаем группировку по клиентам, а в качестве агрегирующей функции выбираем вариант Все строки (All rows) . Назвать новый столбец можно как угодно - например Подробности.
После группировки получим список уникальных имен наших клиентов и в столбце Подробности - таблицы со всеми сделками каждого из них, где первой строкой будет идти самая последняя сделка, которая нам и нужна:
5 . Добавляем новый вычисляемый столбец кнопкой Настраиваемый столбец на вкладке Добавить столбец (Add column - Add custom column) и вводим следующую формулу:
Здесь Подробности - это столбец, откуда мы берем таблицы по клиентам, а - это номер строки, которую мы хотим извлечь (нумерация строк в Power Query начинается с нуля). Получаем столбец с записями ( Record ), где каждая запись - первая строка из каждой таблицы:
Осталось развернуть содержимое всех записей кнопкой с двойными стрелками в шапке столбца Последняя сделка, выбрав нужные столбцы:
. и удалить потом ненужный более столбец Подробности щёлкнув по его заголовку правой кнопкой мыши - Удалить столбцы (Remove columns) .
После выгрузки результатов на лист через Главная - Закрыть и загрузить - Закрыть и загрузить в (Home - Close & Load - Close & Load to. ) получим вот такую симпатичную таблицу со списком последних сделок, как и хотели:
При изменении исходных данных результаты нужно не забыть обновить, щёлкнув по ним правой кнопкой мыши - команда Обновить (Refresh) или сочетанием клавиш Ctrl + Alt + F5 .
Функция ищет дату в строке вне зависимости от того в какой части текста она находится, формат даты при этом может быть практически любым.
Описание работы
Часто необходимо извлечь дату из ячейки, которая содержит длинный текст. Задача может усложнится тем, что дата может быть как в начале, в конце или середине текста. Еще сложнее дело будет обстоять, что дата в тексте имеет разные форматы.
Извлечь в данном случае дату из текста стандартными методами крайне сложно.
С помощью функции на VBA =ДАТАИЗСТРОКИ это сделать очень просто. Функция найдет дату в тексте вне зависимости от формата ее записи и расположения ее в строке. Также распознаются даты на русском и английском языке.
Пример 1
Извлечение даты из текста, когда она расположена в начале строки. Это простой случай, здесь можно воспользоваться и сочетанием стандартных текстовых функций.
Пример 2
Аналогичный пример, но дата расположена в конце строки.
Пример 3
Извлечение даты из любой части текста и особенности функции. Обойтись стандартными функциями тут практически невозможно. Алгоритм функции из надстройки справится с эти очень просто.
Синтаксис функции
Функция =ДАТАИЗСТРОКИ(ТЕКСТ;[En]) имеет два аргумента:
- ТЕКСТ - Текст, из которого необходимо извлечь дату
- [En] - Необязательный параметр. Если дата содержит наименование месяца на английском языке, укажите данный параметр равный 1. По умолчанию равно 0.
Пример 4
Извлечение даты на английском языке из текста
Надстройка для Excel содержит большой набор полезных функций, с помощью которых вы значительно сократите время и увеличите скорость работы с программой.
Пусть имеется диапазон с датами. Найдем дату из этого диапазона, которая является ближайшей к заданной. Решение этой задачи аналогично решению, изложенного в статье Поиск ЧИСЛА ближайшего к заданному .
Пусть в диапазоне A4:A12 имеется список дат. Будем в нем искать дату из ячейки С4 . Если диапазон не содержит искомого значения, то будет возвращено ближайшее значение.
Искомая дата необязательно должна совпадать с какой-нибудь датой или даже находиться в диапазоне поиска (см. Файл примера ):
Решение
Результат поиска
Примечание
если столбец не отсортирован по возрастанию, то результат непредсказуем
ищется ближайшая к критерию дата (если обнаружено 2 ближайших числа (одно больше, другое меньше критерия), то выводится то, которое расположено выше (номер строки меньше))
столбец м.б. не отсортирован
столбец м.б. не отсортирован
= ИНДЕКС(A4:A12; ПОИСКПОЗ(МИН(ЕСЛИ(A4:A12>=C4;A4:A12;"")); $A$4:$A$12;0);1)
столбец м.б. не отсортирован
ищется ближайшая к критерию дата (если обнаружено 2 ближайших числа (одно больше, другое меньше критерия), то выводится то, которое больше
столбец м.б. не отсортирован
ищется ближайшая к критерию дата (если обнаружено 2 ближайших числа (одно больше, другое меньше критерия), то выводится то, которое меньше
столбец м.б. не отсортирован
Последние 5 решений реализованы с использованием формул массива . Для пошагового просмотра хода вычислений используйте клавишу F9 .
Хорошим решением является формула массива =ИНДЕКС(A4:A12; ПОИСКПОЗ(МИН(ABS(A4:A12-C4));ABS(A4:A12-C4);0))
свободная от всех указанных недостатков, но имеющая свои: формула относительно сложная и является формулой массива .
Совет : т.к. дата в MS EXCEL хранится в числовом виде (см. статью Как Excel хранит дату и время ), то формулы для поиска ближайшего числа также будут работать для дат (см. раздел Ближайшее ЧИСЛО ).
Читайте также: