Работа с временем и датой – важный аспект использования Microsoft Excel. Сегодня вы узнаете, как можно вводить дату разными способами, как определить сегодняшнюю дату с помощью метки времени или же использовать динамически изменяемые значения. Также вы поймете, с помощью каких действий можно заполнить колонку или ряд днями недели.
Существует несколько вариантов, позволяющих добавить даты в Excel. В зависимости от того, какие цели вы преследуете, действия отличаются. А задачи могут быть любыми: указать сегодняшнее число или же добавить к листу дату, которая будет автоматически обновляться и показывать всегда то, что сейчас на данный момент на часах и календаре. Или же вы хотите сделать так, чтобы электронная таблица была автоматически заполнена рабочими днями или ввести случайную дату. Независимо от того, какие цели вы преследуете, вы сегодня узнаете, как их достичь.
Содержание
- Как ввести дату в Excel
- Вставка текущей даты и времени
- Как поставить неизменную отметку времени автоматически (формулами)
- Как автоматически заполнять даты в Excel
- Как поставить текущую дату на колонтитул
Как ввести дату в Excel
Пользователь может ввести дату в электронную таблицу самыми разными методами и в различных форматах. Например, можно записать ее как 1 января 2020, а можно – 1.01.2020. Независимо от того, в каком формате указать дату, программа автоматически определит, что пользователь хочет записать ее. Очень часто программа самостоятельно форматирует значение, исходя из формата, установленного в Windows, но в некоторых случаях возможно форматирование в том виде, котором указал пользователь.
В любом случае, если формат даты пользователя не удовлетворяет, он может его изменить в настройках ячейки. Как же понять, что то значение, которое указал пользователь, Excel определил, как дату? Об этом говорит выравнивание значения по правому краю, а не по левому.
Если Эксель не смог определить введенные данные и присвоить правильный формат, и вы видите, что они не располагаются по правому краю ячейки, то можно попробовать ввести дату в любом другом формате, который близок к стандартному. Чтобы посмотреть, какие доступны на данный момент, они можно перейти в меню «Формат ячейки», которое можно найти в разделе «Число», которое находится на вкладке «Главная».
Если в этом есть надобность, пользователь с легкостью может менять вид представления ячейки, которая записана, как та, которая содержит дату. Для этого можно воспользоваться тем же самым окном «Формат ячеек», которое было описано выше.
Также его можно вызвать с помощью комбинации клавиш Ctrl + 1.
Иногда пользователь сталкивается с ситуацией, когда ячейка отображается в форме большого количества решеток, которые содержатся в ней. Как правило, это говорит о том, что программа просит пользователя увеличить размеры ячеек. Исправить эту проблему очень просто. Достаточно два раза нажать на правую границу того столбца, в котором показывается эта ошибка. После этого ширина ячеек в этой колонке будет определена автоматически, исходя из самой большой длины содержащейся в ней текстовой строки.
Или же можно выставить правильную ширину с помощью перетаскивания правой границы до тех пор, пока ширина ячейки не будет правильной.
Вставка текущей даты и времени
Есть два варианта вставки текущего времени и даты в Эксель: статический и динамический. Первый служит отметкой времени. Второй же вариант позволяет держать всегда актуальную дату и время в ячейке.
Что можно сделать для того, чтобы поставить всегда актуальную метку времени? Для этого надо использовать те же формулы, что и ниже. Они всегда будут показывать актуальную дату и время.
Если надо установить статическое время, то можно воспользоваться специальными инструментами эксель, которые вызываются с помощью горячих клавиш:
- Ctrl + ; или Ctrl + Shift + 4 – эти горячие клавиши автоматически вставляют в ячейку ту дату, которая актуальна на момент, когда человек нажимает на эти кнопки.
- Ctrl + Shift + ; или Ctrl+Shift+6 – с их помощью можно записать текущее время.
- Если же нужно вставить и время, и дату, актуальные на данный момент, необходимо сначала нажать первую комбинацию клавиш, после чего нажать на пробел, и вызвать вторую комбинацию.
Какие конкретно клавиши использовать? Все зависит от раскладки, которая активирована на данный момент. Если сейчас стоит английская раскладка, то используется первая комбинация, если же русская – вторая (то есть, так, которая следует непосредственно за словом «или»).
Следует отметить, что не всегда использование этих горячих клавиш является идеальными. В некоторых случаях срабатывает только одна из описанных выше комбинаций, независимо от того, какой язык выбран. Поэтому лучший способ понять, какую использовать, – проверить.
Как правило, закономерность следующая: все зависит от того, какой язык был установлен на момент открытия файла. Если английский, то даже если поменять раскладку на русскую, ситуация не изменится абсолютно. Если же был установлен русский язык, то даже если сменить ее его на английский, то нужно использовать ту формулу, которая подходит для русского языка.
Как поставить неизменную отметку времени автоматически (формулами)
Для того, чтобы ячейка всегда отображала время, существуют специальные формулы. Но конкретная формула зависит от того, какие задачи преследует пользователь. Так, если достаточно обычной демонстрации времени в таблице, то необходимо использовать функцию ТДАТА(), которая не содержит никаких аргументов. После того, как мы ее вставим в ячейку, меняем ее формат на «Время» описанным выше способом.
Если же потом, основываясь на этих данных вы собираетесь что-то еще делать и использовать получившийся результат в формулах, то лучше тогда использовать сразу две функции: =ТДАТА()-СЕГОДНЯ()
Как итог, количество дней будет равняться нулю. Поэтому в качестве результата, возвращаемого этой формулой, останется только время. Но и здесь нужно также использовать временной формат, чтобы все работало, как часы. Во время использования формул нужно обратить внимание на следующие нюансы:
- Обновление данных не происходит постоянно. Чтобы дата и время сменились на актуальную, необходимо закрыть окно, предварительно его сохранив, а потом снова его открыть. Также обновление происходит, если включить макрос, который настроен на эту функцию.
- В качестве источника данных эта функция использует системные часы. Поэтому если они настроены неправильно, формула также будет плохо работать. Следовательно, рекомендуется поставить автоматическое определение даты и времени из интернета.
А теперь представим такую ситуацию. У нас есть таблица с перечнем товаров, расположенных в колонке А. Непосредственно после их отправки заказчику необходимо вводить в специальной ячейке значение «Да». Задача: автоматически зафиксировать время, когда человек написал слово «Да» и при этом защитить его от изменения.
Какие действия можно предпринять, чтобы достичь этой цели? Например, можно попробовать воспользоваться функцией ЕСЛИ, в которой также будет содержаться эта же функция, но с данными, зависящими от значения другой ячейки. Гораздо проще это продемонстрировать на примере. Формула будет выглядеть так: =ЕСЛИ(B2=»Да»; ЕСЛИ(C2=»»;ТДАТА(); C2); «»)
Расшифруем эту формулу.
- B – это колонка, в которой нам надо записывать подтверждение доставки.
- C2 – это та ячейка, в которой будет выводиться отметка времени после того, как мы запишем в ячейку B2 слово «Да».
Описанная выше формула работает следующим образом. Она проверяет, есть ли слово «Да» в ячейке B2. Если да, то выполняется вторая проверка, которая проверяет, является ли ячейка C2 пустой. Если да, то тогда возвращается текущая дата и время. Если же ни одна из описанных выше функций ЕСЛИ содержат иные параметры, то тогда ничего не меняется.
Если же нужно, чтобы критерий был «если содержится хотя бы какое-то значение», то тогда нужно использовать в условии оператор «не равно» <>. В таком случае формула будет выглядеть так: =ЕСЛИ(B2<>»»; ЕСЛИ(C2=»»;ТДАТА(); C2); «»)
Эта формула работает следующим образом: сначала проверяется, есть ли хоть какое-то содержимое в ячейке. Если да, то запускается вторая проверка. Дальше последовательность действий остается той же самой.
Для полноценной работоспособности этой формулы необходимо включить интерактивные вычисления во вкладке «Файл» и в разделе «Параметры – Формулы». При этом нежелательно делать так, чтобы ссылка ячейки осуществлялась на нее же. Работоспособность от этого будет хуже, а вот функциональность – не улучшится.
Как автоматически заполнять даты в Excel
Если вам надо заполнить большую часть таблицы датами, то можно воспользоваться специальной функцией, которая называется автозаполнением. Давайте рассмотрим некоторые частные случаи ее использования.
Предположим, нам надо заполнить перечень дат, каждая из которых больше на один день по сравнению с предыдущей. В таком случае необходимо использовать автозаполнение так, как и с любыми другими значениями. Сначала необходимо указать в ячейке первоначальную дату, а потом с помощью маркера автозаполнения переместить формулу или вниз или вправо в зависимости от того, в какой последовательности расположена информация в таблице конкретно в вашем случае. Маркер автозаполнения – это маленький квадратик, который находится в правом нижнем углу ячейки, перетаскивая который, можно автоматически заполнить огромное количество информации. Программа автоматически определяет то, как правильно заполнять, и в большинстве случаев оказывается правой. На этом скриншоте мы заполнили дни в столбик. Получился следующий результат.
Но на этом возможности автозаполнения не заканчиваются. Можно выполнить его даже применительно к будням, месяцам или годам. Есть целых два способа, как это сделать.
- Использовать стандартный маркер автозаполнения так, как было описано выше. После того, как программа автоматически закончит все, нужно нажать на значок с параметрами автозаполнения и выбрать подходящий метод.
- Перетащить маркер автозаполнения с помощью правой кнопки мыши, и когда вы отпустите ее, автоматически появится меню с настройками. Выбираете тот способ, который вам нужен, и радуетесь.
Также можно осуществить автоматическую вставку каждого N дня. Для этого нужно добавить значение к ячейке, щелкнуть правой кнопкой мыши по маркеру автозаполнения, зажать ее и перетащить до того места, в котором должна заканчиваться числовая последовательность. После этого выбираем параметр заполнения «Прогрессия» и выбираем значение шага.
Как поставить текущую дату на колонтитул
Колонтитул – это область документа, которая является как бы универсальной для всей книги. Туда могут быть занесены различные данные: имя человека, который составил документ, день, когда это было сделано. В том числе, поставить актуальную дату. Выполняйте следующую инструкцию:
- Откройте меню «Вставка», с которого вызовите меню настройки колонтитулов.
- Добавьте те элементы колонтитулов, которые вам нужны. Это может быть как обычный текст, так и дата, время.
Важное замечание: дата при этом будет статичной. То есть, нет какого-либо автоматизированного способа постоянно обновлять информацию в колонтитулах. Просто нужно с клавиатуры написать те данные, которые актуальны на этот момент.
Поскольку колонтитулы предназначены для вывода сервисной информации, которая не имеет прямого отношения к содержимому документа, то нет смысла там вставлять формулы и прочее. Если нужно воспользоваться формулами, всегда можно записать нужные значения в первой строке (и добавить пустую строку на этом месте, если уже там хранятся какие-то данные) и закрепить ее через вкладку «Вид» или «Окно» в зависимости от используемой версии офисного пакета (первый вариант для тех редакций, которые были выпущены после 2007 года, а второй – для тех, которые были до этого времени).
Таким образом, мы разобрались в разных способах вставить автоматически дату и время в Эксель. Видим, что ничего сложного в этом нет, и даже ребенок может разобраться.
Оцените качество статьи. Нам важно ваше мнение:
Excel для Microsoft 365 Excel для Интернета Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше
В некоторых случаях даты могут быть отформатированы и храниться в ячейках в виде текста. Например, вы могли ввести дату в ячейку, которая была отформатирована как текст, или данные могли быть импортированы или вставлены из внешнего источника данных в виде текста.
Даты, отформатированные как текст, выравниваются по левому краю в ячейке (а не по правому краю). Если включена проверка ошибок, текстовые даты с двумя цифрами лет также могут быть помечены индикатором ошибки: .
Поскольку функция проверки ошибок в Excel распознает даты в текстовом формате с двузначным номером года, можно воспользоваться средством автозамены и преобразовать их в даты в формате даты. Функцию DATEVALUE можно использовать для преобразования большинства других типов текстовых дат в даты.
При импорте данных в Excel из другого источника или при вводе дат с двумя цифрами лет в ячейки, которые ранее были отформатированы как текст, в левом верхнем углу ячейки может появиться небольшой зеленый треугольник. Этот индикатор ошибки указывает на то, что дата хранится в текстовом формате, как показано в данном примере.
Индикатор ошибки можно использовать для преобразования дат из текста в формат даты.
Примечания: Сначала убедитесь, что проверка ошибок включена в Excel. Для этого:
-
Щелкните Файл > Параметры > Формулы.
В Excel 2007 нажмите кнопку Microsoft Office , а Excel параметры > формул.
-
В разделе «Проверка ошибок» установите флажок «Включить фоновую проверку ошибок». Все найденные ошибки помечаются треугольником в левом верхнем углу ячейки.
-
В разделе «Правила проверки ошибок» выберите ячейки, содержащие годы, представленные в виде двух цифр.
Выполните следующую процедуру, чтобы преобразовать форматированную текстом дату в обычную дату:
-
Выделите ячейку или диапазон смежных ячеек с индикатором ошибки в верхнем левом углу. Дополнительные сведения см. в разделе «Выбор ячеек, диапазонов, строк или столбцов на листе».
Совет: Чтобы отменить выделение ячеек, щелкните любую ячейку на листе.
-
Нажмите кнопку ошибки, которая отображается рядом с выделенными ячейками.
-
В меню выберите команду Преобразовать XX в 20XX или Преобразовать XX в 19XX. Если вы хотите закрыть индикатор ошибки без преобразования числа, нажмите кнопку «Пропустить ошибку».
Текстовые даты с двумя цифрами лет преобразуют в стандартные даты с четырехзначными годами.
После преобразования ячеек с текстовыми значениями можно изменить внешний вид дат путем применения формата даты.
Если на листе есть даты, которые, возможно, были импортированы или вставлены, в итоге выглядят как ряд чисел, как показано на рисунке ниже, вы, вероятно, захотите переформатировать их, чтобы они отображались как короткие или длинные даты. Формат даты также будет полезен, если вы хотите отфильтровать, отсортировать или использовать его в вычислениях дат.
-
Выделите ячейку, диапазон ячеек или столбец, которые нужно переформатировать.
-
Щелкните «Формат номера» и выберите нужный формат даты.
Формат короткой даты выглядит следующим образом:
Длинная дата содержит дополнительные сведения, как на этом рисунке:
Чтобы преобразовать текстовую дату в ячейке в серийный номер, используйте функцию DATEVALUE. Затем скопируйте формулу, выделите ячейки, содержащие текстовые даты, и используйте специальную вставку, чтобы применить к ним формат даты.
Сделайте следующее:
-
Выделите пустую ячейку и убедитесь, что ее число имеет формат «Общие».
-
В пустой ячейке сделайте следующее.
-
Введите =DATEVALUE(
-
Щелкните ячейку, содержащую дату в текстовом формате, которую следует преобразовать.
-
ВВОД )
-
Нажмите клавишу ВВОД, и функция DATEVALUE возвращает серийный номер даты, представленной текстовой датой.
Что такое Excel серийный номер?
В Excel даты хранятся в виде порядковых номеров, что позволяет использовать их в вычислениях. По умолчанию 1 января 1900, является серийным номером 1, а 1 января 2008 г. — серийным номером 39448, так как это 39 448 дней после 1 января, 1900.To скопируйте формулу преобразования в диапазон смежных ячеек, выделите ячейку, содержащую введенную формулу, а затем перетащите маркер заполнения по диапазону пустых ячеек, которые соответствуют диапазону ячеек, содержащих текстовые даты.
-
-
В результате получится диапазон ячеек с порядковыми номерами, который соответствует диапазону ячеек с датами в текстовом формате.
-
Выделите ячейку или диапазон ячеек, которые содержат серийные номера, а затем на вкладке «Главная» в группе буфера обмена нажмите кнопку «Копировать».
Сочетание клавиш: Можно также нажать клавиши CTRL+C.
-
Выделите ячейку или диапазон ячеек, которые содержат даты в текстовом формате, и на вкладке Главная в группе Буфер обмена нажмите стрелку под кнопкой Вставить и выберите команду Специальная вставка.
-
В диалоговом окне Специальная вставка в разделе Вставить выберите параметр Значения и нажмите кнопку ОК.
-
На вкладке « Главная» щелкните всплывающее окно рядом с пунктом «Число».
-
В поле Категория выберите пункт Дата, после чего укажите необходимый формат даты в списке Тип.
-
Чтобы удалить серийные номера после успешного преобразования всех дат, выделите ячейки, содержащие их, и нажмите клавишу DELETE.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Нужна дополнительная помощь?
Skip to content
Сейчас вы научитесь использовать функции 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 мастера снимите флажки со всех разделителей и нажмите Далее.
- На последнем шаге выберите «Дата» в разделе «Формат данных столбца», укажите в выпадающем списке вид, соответствующий вашим данным. Нажмите «Готово».
Теперь Excel распознает ваши текстовые значения как нужно, автоматически преобразует их в формат даты по умолчанию и отобразит в ячейках с выравниванием по правому краю.
Вы можете изменить представление результата обычным способом через диалог Формат ячеек.
Заметка. Для правильной работы мастера «Текст по столбцам» все записи должны быть единообразными. Например, если некоторые из них выглядят как день / месяц / год , а другие — месяц / день / год , вы получите неверные результаты.
Пример 2. Преобразование сложных текстовых строк в даты.
Если ваши записи представлены более сложной фразой из нескольких частей, к примеру:
- 8 март 2020 г., воскресенье
- 8 март 2020 г. 15:00
Вам нужно будет приложить немного больше усилий и использовать рассматриваемый нами инструмент в комбинации с функцией ДАТА.
Важно! Название месяца при использовании этого метода должно быть в именительном падеже!
- Выберите нужную область данных.
- Вызовите мастер преобразования.
- На шаге 1 укажите «С разделителями» и нажмите « Далее» .
- На шаге 2 мастера выберите разделители, которые у вас используются.
Например, если вы преобразуете строки, разделенные запятыми и пробелами, например «8 март 2020г., воскресенье», то вам следует выбрать оба разделителя — запятую и пробел.
Также имеет смысл выбрать опцию «Считать последовательные разделители одним», чтобы игнорировать лишние пробелы или пробел после запятой, если они есть в ваших данных.
Я немного усложнил наш пример, добавив после порядкового номера года еще букву «г» с точкой. Поэтому эта буква и добавлена в список разделителей.
И, наконец, взгляните на окно Образец разбора данных и проверьте, правильно ли поделены ваши слова на столбцы. Затем нажмите «Далее».
- На шаге 3 мастера убедитесь, что все колонки в разделе предварительного просмотра данных имеют формат «Общий». Если это не так, щелкните столбец и выберите Общий в разделе Формат данных.
Заметка. Не выбирайте формат «Дата», поскольку каждый столбец содержит только ее часть. Поэтому Excel не сможет понять, что вы на самом деле хотите сделать.
Если вам не нужен какой-то из столбцов, щелкните по нему и выберите «Пропустить».
Как видите, я буду использовать только три первых столбца, а два последних не нужны.
Если вы не хотите перезаписывать исходные данные, укажите, где именно должны быть вставлены результаты — введите адрес верхней левой ячейки в поле «Поместить в…». Выбираем ячейку B2.
Когда закончите, нажмите кнопку Готово.
Как вы видите на скриншоте выше, мы пропускаем четвертую и пятую колонки с точкой и днями недели, разделяем остальные данные на 3 столбца (в общем формате) и вставляем их, начиная с ячейки В2.
На следующем рисунке показан результат с исходными данными в A и разделенными на части данными в В, C и D.
- Наконец, вы должны объединить эти кусочки вместе, используя функцию ДАТА (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е.
Чтобы преобразовать «дату-как-текст» в обычную дату, выполните следующие действия:
- Выделите ячейки с текстовыми данными и нажмите Text to Date .
- Укажите порядок дат (дни, месяцы и годы) в выбранных ячейках.
- Выберите, нужно ли включать время в преобразованные даты.
- Щелкните Преобразовать (Convert).
Вот и все! Результаты конвертации появятся в соседнем столбце, ваши исходные данные сохранятся. Если что-то пойдет не так, вы можете просто удалить их и повторить попытку с другим порядком дат.
А вот пример конвертации текста в дату и время:
Порядок действий тот же, но нужно не забыть снять галочку, чтобы не исключать время из расчётов.
Подсказка. Если вы выбрали преобразование даты и времени, но единицы времени отсутствуют в результатах, обязательно примените в ячейке формат, в котором отображаются как значения даты, так и времени. Дополнительные сведения см. в статье «Как создавать собственные форматы даты и времени» .
Если вам интересно узнать больше об этом замечательном инструменте, посетите его домашнюю страницу.
Итак, мы с вами рассмотрели как в Excel можно различными способами преобразовать текст в дату. Надеюсь, вам удалось найти метод по своему вкусу.
Я благодарю вас за чтение и надеюсь вновь увидеть вас на нашем сайте.
Также рекомендуем:
Преобразовать текст в дату Excel.
Смотрите также знаков, например 01, AlexMra.NumberFormat = «General»Равильполучается текст 16/02/01 даты, то, возможно, день. смотрите в статье дата стоит в– это формат,Чтобы преобразовать этот это минуты, формулапреобразовать дату в текст даты, п.ч. мы
раз на пробел, Нам поможетЗдесь рассмотрим, как 09, 22 или: Можно использовать формулуra.Value = Evaluate(«TEXT(«: И даже с — нужна дата в ячейках стоитКак преобразовать число в «Преобразовать текст в
формате ячейки «Дата». с помощью которого
порядковый номер в будет считать по-другому. Excel перед вводом формулы п.ч. ничего нефункция впреобразовать в усложнять формулу Код Код =ЕСЛИ(ЕОШ(-ЛЕВБ(A1));СЕГОДНЯ()-ПРОСМОТР(2;ПОИСК({«вчера»;»сегодня»};A1);{1;0});ЛЕВБ(ПОДСТАВИТЬ(A1;»я «;»й & ra.Address(, , cell.Offset(, 0) =подредактируйте код пожалуйста не тот формат. дату Excel. дату Excel». Excel посчитает даты,
Excel понимает ЧТО привычный для насЕсли нужен другой
(установить текстовый формат, настроили формат ячеек должно стоять послеExcel «ЗАМЕНИТЬ».Excel текст в дату =ЕСЛИ(ЕОШ(-ЛЕВБ(A1));СЕГОДНЯ()-ПРОСМОТР(2;ПОИСК({«вчера»;»сегодня»};A1);{1;0});ЛЕВБ(ПОДСТАВИТЬ(ЕСЛИ(ЕОШ(-ЛЕВБ(A1;3));0;»»)&A1;»я «;»й «);6)&E$1)+ПРАВБ(A1;5) «);6))+ПРАВБ(A1;5) Результат потом , True) & DateValue(Format(cell, «00/00/00»))
или напишите лучшийНапоминаем, что вУ нас такаяБывает, что в
записанные и порядковыми написано – число, формат даты, нужно формат, то пропишем а не записать «Дата». цифр.Итак, убираем буквуи
VirtualMan копировать и вставить «,»»00-00-00″»)»)текст получается смотрите вариант Excel есть два таблица с датами, ячейках дата написана номерами, но нам дата, текст, т.д.,
установить в ячейке его в формуле. прописью), воспользуемся функциейВ ячейке С26В этом диалоговом «г» в концедату в текст Excel
: Спасибо. специальной вставкой «значения»,End Sub сами (вложенный файл)Guest формата – формат написанными одним числом. одним числом (например,
удобнее видеть даты и проводит различные формат даты. Какими
Например, так. «ТЕКСТ» в Excel.
тоже стоит дата, окне мы написали
дат.. Если мы скопировалиБьюсь пару часов чтобы убрать функциюVirtualMan а формулой не: =ДАТА(2000+ПСТР(D11;5;2);ПСТР(D11;3;2);ПСТР(D11;1;2)) ячейки и форматНам нужно сделать так, так. 20160112). Нам в формате «Дата». вычисления в зависимости способами вызвать диалоговоеВ Excel можноФункция «Текст» в но указан порядковый условия, как должноВ ячейке В1 или получили в
не могу решить СЕГОДНЯ(). Иначе на: В экселе сейчас вариант, т.к уlapink2000 значений. Подробнее об чтобы все даты
нужно преобразовать этоПреобразовать дату в текст от формата числа, окно и сменить многое закрепить, чтобыExcel номер даты. В быть написано число вставляем формулу. На «наследство» таблицу, в другую задачу. следующий день функция
текстовые поля вместо мне преобрзовать надо: cell.Offset(, 0) = этих форматах, чем были написаны в число в дату,
в Excel. текста, т.д. Если
формат, смотрите в не смещалось припреобразует формат значения таком формате Excel по формату «Дата», закладке «Формулы» в которой даты написаныВсе победил кроме СЕГОДНЯ() вернет другое дат: 300 тыс. строк. DateValue(Format(cell, «00/00/00»)) они отличаются, как таком формате –
разделить точками год,Даты записаны так.
формат чисел стоит статье «Формат Excel» перемещении, после фильтра, ячейки в текстовый хранит даты. Чтобы в который будем разделе «Библиотека функций» текстом, мы не условия с $, значение1 марта вlapink2000Внимание! Это будет настроить нужный формат,
26.01.2016. месяц, день. Как Формат ячеек – не верный, то тут. при копировании, т.д. формат (число будет
преобразовать дату в преобразовывать это значение. выбираем — «Текстовые». сможем отсортировать данные не могу понятьVirtualMan 19:24: Это от того, работать правильно на т.д., читайте вВ ячейке В1
это сделать, смотрите «Дата». формула считать неУточним еще один момент
— заголовок, строку,
написано цифрами, не нужном нам формате, Нажимаем «ОК». Нажимаем из списка по дате. В что не так: Большое спасибо, то
вчера в 09:45 что у вас компьютерах, где системный статье «Преобразовать дату пишем такую формулу. в статье «ПреобразоватьНажимаем на ячейку В7. будет. Подробнее об- картинку в ячейке, прописью). достаточно установить обычнымФормула получится такая. на функцию «ЗАМЕНИТЬ». ячейках есть формат делаю. что нужно.сегодня в 09:45
excel-office.ru
Преобразовать дату в текст Excel.
ячейки отформатированы как формат даты «DD/MM/YYYY». в текст Excel»=ДАТА(ЛЕВСИМВ(A1;4);ПСТР(A1;5;2);ПРАВСИМВ(A1;2)) число в дату На закладке «Формулы»
этом читайте вформат даты в Excel. ссылку, ячейку вУ нас такая
способом формат даты =ЗАМЕНИТЬ(A26;11;1;»»)Копируем формулу по Заполняем диалоговое окно ячейки, а естьКод =ЕСЛИ(ИЛИ(A1=»не указана»;A1=»договорная»);СЖПРОБЕЛЫ(A1);СЖПРОБЕЛЫ(ЕСЛИ(ПОИСК(«руб»;A1)>0;ПСТР(A1;1;ПОИСК(«руб»;A1)+2);ЕСЛИ(ПОИСК(«$»;A1)>0;ПСТР(A1;1;ПОИСК(«$»;A1))))))Но один моменти т.д. ТЕКСТ ;-) Если в системе здесь.Копируем формулу по
Excel». в разделе «Библиотека статье «Преобразовать текстВ Excel два формуле, т.д. Смотрите таблица. В столбце в ячейке. (Формат столбцу. Получилось так. так. формат значений.AlexM
как итоговый годКак преобразовать вПопробуйте вот так:
порядок дня иКак работать с столбцу. Получилось так.В Excel можно функций» в функциях в число Excel».
формата – формат об этих способах С написаны даты ячейки -> Дата).Осталось преобразовать этот текстВ строке «Старый текст»Бывает, стоит в: Код =ЕСЛИ(ЕОШ(-ЛЕВБ(A1));A1;ЛЕВБ(A1;ПРОСМОТР(99;ПОИСК({«руб»;»$»};A1)+{2;0}))) с текущего 2017 формат YYYY-MM-DD HH:MM:SS,Sub CreateTime() месяца противоположный (например датами в Excel,
Преобразовать дату в число отследить изменения, произведенные «Текстовые» выбираем функциюТеперь рассмотрим,ячейки в статье «Как в формате «Дата». Теперь этот столбец в дату. указываем первую ячейку, ячейке формат «Дата»,AlexM поменять на 2016 чтобы потом можноDim cell As US), то дата менять формат, считать, Excel. ранее. Например, сотрудник «Текст». Диалоговое окнокак преобразовать порядковый номери формат закрепить в Excel Нам нужно эти
можно сортировать поПреобразовать текст в дату в которой нужно а сортировка по: Ваша формула без
или 2015? было импорт CSV Range, ra As
не будет распознана прибавлять дни кЧтобы преобразовать дату
без вашего ведома функции «Текст» заполнили дат в форматзначения заголовок, строку, ячейку, даты перевести в
дате. Как это Excel. убрать букву «г». датам не работает, ошибок Код =ЕСЛИ(ИЛИ(A1=»неAlexM в SQL сделать?
Range: Application.ScreenUpdating = или будет распознана дате, вычитать, т.д.,
в число, в изменил некоторые цифры. так. «Дата», написанного в ячейке.
ссылку, т.д.». текст (формат текст).
сделать, смотрите вВ новом столбцеВ строке «Нач_поз»
п.ч. даты написаны указана»;A1=»договорная»);СЖПРОБЕЛЫ(A1);СЖПРОБЕЛЫ(ЕСЛИ(ЕЧИСЛО(ПОИСК(«руб»;A1));ПСТР(A1;1;ПОИСК(«руб»;A1)+2);ЕСЛИ(ЕЧИСЛО(ПОИСК(«$»;A1));ПСТР(A1;1;ПОИСК(«$»;A1)))))) Ваша формула: Для сегодня иЗаранее благодарю! False неверно. смотрите в статье соседней ячейке пишем Или, например, составляемНажимаем «ОК». Получилась.Формат ячейкиРассмотрим, какВыделяем ячейку D26. На статье «Сортировка по устанавливаем формат ячеек указываем, какой по текстом. Подробнее про упрощенная Код =СЖПРОБЕЛЫ(ЕСЛИ(ЕЧИСЛО(ПОИСК(«руб»;A1));ПСТР(A1;1;ПОИСК(«руб»;A1)+2);ЕСЛИ(ЕЧИСЛО(ПОИСК(«$»;A1));ПСТР(A1;1;ПОИСК(«$»;A1));A1))) вчера, я полагаю,pashulkaSet ra =Если необходимо хранить «Работа с датами такую формулу. отчет. Нам нужно
такая формула. =ТЕКСТ(А7;»ДД.ММ.ГГГГ»)У нас такаявпреобразовать дату в текст закладке «Главная» в дате в Excel».
«Дата», выделяем первую счету символ нужно формат ячеек и В файле три год не надо: Можно программно удалить Range([C1], Range(«C» & даты в текстовом в Excel» и=—(ТЕКСТ(A1;»ГГГГММДД»)) посмотреть предыдущую цифру, Копируем формулу из
таблица с датами,Excel Excel разделе «Библиотека функций»Преобразовать число в дату ячейку. На закладке убрать. У нас значений в Excel, формулы менять. Код =ЕСЛИ(ЕОШ(-ЛЕВБ(A1));СЕГОДНЯ()-ПРОСМОТР(2;ПОИСК({«вчера»;»сегодня»};A1);{1;0});ЛЕВБ(ПОДСТАВИТЬ(A1;»я » в», а Rows.Count).End(xlUp)) формате, то лучше в конце этой
excel-office.ru
Преобразовать число в дату Excel.
Копируем формулу по которая стояла в ячейки В7 вниз написанными порядковыми номерами.– это внешний. Нам нужно, чтобы нажимаем кнопку «Текстовые», в Excel. «Формулы» в разделе буква «г» - смотрите в статьеAlexM «;»й «);6)&E$1)+ПРАВБ(A1;5) Год
затем, заменить «вчера»ra.NumberFormat = «General»
это делать в же статьи, смотрите столбцу. Получилось так.
ячейке, т.д. Подробнее по столбцу. ПолучилосьПреобразуем порядковые номера дат вид данных в дата была написана
выбираем функцию «Текст».Бывает, по разным
«Библиотека функций» нажимаем
это 11 по «Преобразовать дату в
: Еще короткая формула задается в ячейке
на Date-1, «сегодня»For Each cell универсальном формате ISO, перечень статей в
Если нужно убрать из
о работе с так.
в привычные для ячейке — шрифт, в текстовом формате. Появившееся диалоговое окно причинам, дата в
на кнопку «Время счету символ (считаем текст Excel». Код =ЛЕВБ(A1;ПРОСМОТР(99;ПОИСК(«;»руб»;»$»;A1&»|»)+{0;2;0})) В Е1 или в на Date, а In ra.Cells т.е. «YYYYMMDD». разделе «Другие статьи таблицы столбец А
этой функцией смотритеДаты в столбце нас даты. размер шрифта; число,Сначала вспомним, как
заполняем так. ячейке написана одним и дата». Нажимаем и точки, иУ нас такая файле 4 формулы формуле заменить ссылку «завтра» на Date+1.cell.Offset(, 0) =Например: по этой теме». с датами, то
в статье «Журнал B написаны какЕсли нужно изменить записанное с разрядами; записаны и какВ строке «Значение» указали числом (например, так в появившемся списке пробелы). таблица.AlexM на число 2016 После чего, использовать
Format(cell, «00/00/00»)DateValue(Format(«20010116», «0000-00-00″))В Excel можно можно скрыть этот изменений в Excel». текст (текстовый формат формат дат в
excel-office.ru
Преобразовать текст в дату
в каком месте хранятся даты в адрес ячейки, дату — 20160112). нам
наВ строке «ЧислоВ ячейках таблицы стоит
: Интересная новогодняя задача или 2015
функцию CDate +Next cellбудет распознано правильно
несколькими способами посчитать столбец.
Рассмотрим,значений этом же столбце,
ячейки будут написаны Excel. в которой нужно нужно придать датефункцию «ДАТАЗНАЧ» знаков» написали цифру формат «Дата», но Код =ЛЕВБ(A1;ГПР(99;ПОИСК(«;A1&»|»)+{0;2;0};1))VirtualMan соответствующий формат ячеекEnd Sub
в любой локали. стаж, возраст. ПроИли, скопировать столбецкак преобразовать число в). Формат то выделяем ячейки,
данные – слева,
В Excel даты
преобразовать в текст. нормальный вид, отделив
. В появившемся диалоговом 1, п.ч. стоит написаны даты в
Код =ЛЕВБ(A1;ГПР(99;ПОИСК(«;»руб»;»$»;A1&»|»)+2;1)): Обнаружил проблему если (если нужна именноА для 300
Равиль эти способы читайте В и вставить
дату
в ячейках устанавливаем нужный формат справа, по центру, хранятся под порядковыми
В строке «Формат» точками год, месяц, окне указываем адрес одна буква. Если текстовом формате. ВVirtualMan
месяц июль. дата) или Format тыс. лучше -: мне надо «DD/MM/YYYY» статью «Как быстро
в новый столбец
Excel
(внешний вид данных)стоит дат. выровнены, т.д. номерами. Например, дата
указали формат, в день (например, так выделенной ячейки. Нажимаем
бы было написано
конце даты стоит: Еще большое спасибо,
Насколько понимаю здесь (ежели нужен текст)
вот так
смотрите файл
посчитать стаж в значения ячеек. Аи
– «Общий». Если
Если нужно перенестиНапример, при числовом 01.01.1900 г. хранится котором нужно записать
— 2016.01.12). Как «ОК». Копируем формулу слово «год», то
буква «г» (12.02.
в том числе как то связаноP.S. Если существуетSub CreateTime2()
lapink2000
planetaexcel.ru
Преобразовать дату из текстовой строки в DATETIME
Excel». столбцs с датамидату в число. нужно, то можно
эти данные в формате ячеек данные
под порядковым номером
число.
это сделать, читайте
по столбцу. Получилось в строке написали 2000г). Как убрать за оптимизацию, узнал с окончанием и
вероятность наличия текста,
Dim cell As: Смотрите мой предыдущийРавиль и формулами удалить.Например, в ячейке изменить формат ячеек другой столбец, то пишутся от правой – 1. ДатаПолучилось так. в статье «Преобразовать так, смотрите ячейку бы цифру «3»,
букву «г» и много нового в формула вместо июля типа «100 дней Range, ra As ответ (подсказка: первая: Здравствуйте, нужно преобразовать Подробнее о способах
Excel дата написана «Общий» на формат выделяем ячейки, копируем границы ячейки, а 02.01.1900 г имеетФормат даты пишем заглавными число в дату С27. п.ч. нужно убрать сделать эти даты экселе для себя)
получает июлй до приказа», то Range: Application.ScreenUpdating =
строка) текст 160201 в копирования, смотрите в одним числом 20160112. «Текстовый».
в другой столбец при текстовом формате порядковый номер 2, буквами. Например, ММ Excel».Обратите внимание! три символа (буквы). в формате «Дата».Вопрос закрытAlexM перед вызовом функции
FalseЕсли же вам дату 16.02.2001
статье «Копирование в Нам нужно разделитьКак скопировать дату и устанавливаем формат – от левой
дата 27.01.2015 г. (большими буквами) -этоПреобразовать дату в текстВ ячейке С27В строке «Новый Просто, установив вAlexM: Либо формат даты
CDate имеет смыслSet ra =
надо формулой, яЕсли использовать cell.Offset(, Excel».
точками число на в текстовом формате ячеек «Дата». границы ячейки. имеет порядковый номер
месяц, а мм
Excel. стоит дата в
текст» ничего не ячейке формат «Дата»,: Еще короче Код должен быть с добавить проверку (см. Range([C1], Range(«C» & бы сделал так:
0) = Format(cell,Если по какой-то год, месяц и в формат «Дата»,
Здесь в столбце BФормат значения ячейки Excel – 42031, т.д.
(маленькими буквами) –
Чтобы привычном нам формате пишем, нажимаем один ничего не получится. =ЛЕВБ(A1;ГПР(99;ПОИСК({0;»руб»;»$»};A1&0)+2;1)) числом из двух
функцию IsDate)
Rows.Count).End(xlUp))=—ТЕКСТ(A1;»00-00-00″) «00/00/00»)
CyberForum.ru
причине не считаются
На чтение 9 мин. Просмотров 29.7k.
Содержание
- Преобразование строки даты в дату
- Преобразовать дату в Юлианский формат
- Преобразование даты в месяц и год
- Преобразование даты в текст
- Преобразование даты текста дд/мм/гг в мм/дд/гг
- Преобразование текста в дату
Преобразование строки даты в дату
= ЛЕВСИМВ (дата; 10) + ПСТР (дата; 12;8)
Когда данные даты из других систем вставляются или импортируются в Excel, они могут не распознаваться как правильная дата или время. Вместо этого Excel может интерпретировать эту информацию только как текстовое или строковое значение.
Чтобы преобразовать строку даты в дату-время (дату со временем), вы можете разобрать текст на отдельные компоненты, а затем построить правильное время и дату.
В показанном примере мы используем приведенные ниже формулы.
Для извлечения даты формула в C5:
= ДАТАЗНАЧ (ЛЕВСИМВ(B5;10))
Чтобы извлечь дату, формула в D5:
= ВРЕМЗНАЧ (ПСТР (B5;12;8))
Чтобы собрать дату-время, формула в E5:
= C5 + D5
Чтобы получить дату, мы извлекаем первые 10 символов значения с помощью ЛЕВСИМВ:
ЛЕВСИМВ(B5;10) // возвращает «2015-03-01»
Результатом является текст, поэтому, чтобы заставить Excel интерпретироваться как дата, мы помещаем ЛЕВСИМВ в ДАТАЗНАЧ, который преобразует текст в правильное значение даты Excel.
Чтобы получить время, мы извлекаем 8 символов из середины значения с ПСТР:
ПСТР (B5;12;8) // возвращает «12:28:45»
Опять же, результатом является текст. Чтобы заставить Excel интерпретироваться как время, мы помещаем ПСТР в ВРЕМЗНАЧ, который преобразует текст в правильное значение времени Excel.
Чтобы построить окончательную дата-время, мы просто добавляем значение даты к значению времени.
Хотя этот пример извлекает дату и время отдельно для ясности, вы можете комбинировать формулы, если хотите. Следующая формула извлекает дату и время и объединяет их в один шаг:
= ЛЕВСИМВ(дата; 10) + ПСТР(дата; 12;8)
Обратите внимание, что в этом случае значения ДАТАЗНАЧ и ВРЕМЯЗНАЧ не нужны, поскольку математическая операция (+) заставляет Excel автоматически принудительно передавать текстовые значения в числа.
Преобразовать дату в Юлианский формат
= ГОД (дата) и ТЕКСТ (дата-ДАТА (ГОД (дата); 1;0); «000»)
Если вам нужно преобразовать дату в формат даты в Юлиане в Excel, вы можете сделать это, построив формулу, в которой используются функции ТЕКСТ, ГОД и ДАТА.
«Формат даты в Юлиане» относится к формату, в котором значение года для даты комбинируется с «порядковым днем для этого года» (т. Е. 14-й день, 100-й день и т. д.) для формирования штампа даты.
Есть несколько вариантов. Дата в этом формате может включать в себя 4-значный год (гггг) или год с двумя цифрами (гг), а номер дня может быть заполнен нулями или может быть не дополнен тремя цифрами. Например, на дату 21 января 2017 года вы можете увидеть:
1721 // ГГД
201721 // ГГГГ
2017021 // ГГГГДДД
Для двухзначного года + число дня без дополнения используйте:
= ТЕКСТ (B5; «гг») & B5-ДАТА(ГОД (B5); 1;0)
Для двузначного года + число дня, дополненное нулями до 3-х мест:
= ТЕКСТ (B5; «гг») & ТЕКСТ (B5-ДАТА (ГОД (B5); 1;0); «000»)
Для четырехзначного года + число дня, дополненное нулями до 3-х мест:
= ГОД(B5) & ТЕКСТ(B5-ДАТА(ГОД(B5); 1;0); «000»)
Эта формула строит окончательный результат в 2 частях, объединенных конъюнкцией с оператором амперсанда (&).
Слева от амперсанда мы генерируем значение года. Чтобы извлечь 2-значный год, мы можем использовать функцию ТЕКСТ, которая может применять числовой формат внутри формулы:
ТЕКСТ (B5; «гг»)
Чтобы извлечь полный год, используйте функцию ГОД:
ГОД (B5)
С правой стороны амперсанда нам нужно определить день года. Мы делаем это, вычитая последний день предыдущего года с того дня, с которым мы работаем. Поскольку даты — это просто серийные номера, это даст нам «n» день года.
Чтобы получить последний день года предыдущего года, мы используем функцию ДАТА. Когда вы даете ДАТА значение года и месяца и ноль на день, вы получаете последний день предыдущего месяца. Так:
B5-ДАТА(ГОД (B5); 1;0)
Дает нам последний день предыдущего года, который на примере 31 декабря 2015 года.
Теперь нам нужно заполнить значение дня нулями. Опять же, мы можем использовать функцию ТЕКСТ:
ТЕКСТ (B5-ДАТА (ГОД (B5); 1;0); «000»)
Если вам нужно преобразовать юлианскую дату назад к обычной дате, вы можете использовать формулу, которая анализирует юлианскую дату и пробегает ее через функцию даты с месяцем 1 и днем, равным «n-му» дню. Например, это создаст дату с Юлианской датой ггггддд, например, 1999143.
= ДАТА(ЛЕВСИМВ(A1;4); 1; ПРАВСИМВ(A1;3)) // для ггггддд
Если у вас есть только номер дня (например, 100, 153 и т. д.), вы можете жестко закодировать год и вставить следующий день:
= ДАТА (2016;1; A1)
Где A1 содержит номер дня. Это работает, потому что функция ДАТА умеет настраивать значения вне диапазона.
Преобразование даты в месяц и год
= ТЕКСТ(дата; «ггггмм»)
Чтобы преобразовать нормальную дату Excel в формат ггггмм (например, 9/1/2017> 201709), вы можете использовать функцию ТЕКСТ.
В показанном примере формула в C5:
= ТЕКСТ (B5; «ггггмм»)
Функция TEКСT применяет заданный числовой формат к числовому значению и возвращает результат в виде текста.
В этом случае предоставляется формат числа «ггггмм», который присоединяется к 4-значному году с 2-значным значением месяца.
Если вы хотите отображать дату только с указанием года и месяца, вы можете просто применить формат пользовательских номеров «ггггмм» к датам. Это заставит Excel отображать год и месяц вместе, но не изменит базовую дату.
Преобразование даты в текст
= ТЕКСТ (дата; формат)
Если вам нужно преобразовать даты в текст (т. е. дату в преобразование строк), вы можете использовать функцию ТЕКСТ. Функция ТЕКСТ может использовать такие шаблоны, как «дд / мм / гггг», «гггг-мм-дд» и т. д., чтобы преобразовать действительную дату в текстовое значение.
Даты и время в Excel хранятся в виде серийных номеров и преобразуются в удобочитаемые значения «на лету» с использованием числовых форматов. Когда вы вводите дату в Excel, вы можете применить числовой формат, чтобы отобразить эту дату по своему усмотрению. Аналогичным образом, функция ТЕКСТ позволяет преобразовать дату или время в текст в предпочтительном формате. Например, если дата 9 января 2000 года введена в ячейку A1, вы можете использовать TEКСТ, чтобы преобразовать эту дату в следующие текстовые строки следующим образом:
= ТЕКСТ(A1; «ммм») // «Янв»
= TEКСТ(A1; «дд/мм/гггг») // «09/01/2012»
= ТЕКСТ(A1; «дд-ммм-гг») // «09-Янв-12»
Вы можете использовать TEКСТ для преобразования дат или любого числового значения в фиксированном формате. Вы можете просмотреть доступные форматы, перейдя в меню «Формат ячеек» (Win: Ctrl + 1, Mac: Cmd + 1) и выбрав различные категории в списке слева.
Преобразование даты текста дд/мм/гг в мм/дд/гг
= ДАТА(ПРАВСИМВ(A1;2) + 2000; ПСТР(A1;4;2); ЛЕВСИМВ(A1;2))
Чтобы преобразовать даты в текстовом формате дд/мм /гг в истинную дату в формате мм/дд/гг, вы можете использовать формулу, основанную на функции ДАТА. В показанном примере формула в C5:
= ДАТА(ПРАВСИМВ(B5;2) + 2000; ПСТР(B5;4;2); ЛЕВСИМВ (B5;2))
Который преобразует текстовое значение в B5 «29/02/16» в правильную дату Excel.
Ядром этой формулы является функция ДАТА, которая используется для сборки правильного значения даты Excel. Функция ДАТА требует действительных значений года, месяца и дня, поэтому они анализируются из исходной текстовой строки следующим образом:
Значение года извлекается с помощью функции ПРАВСИМВ:
ПРАВСИМВ(B5;2) +2000
ПРАВСИМВ получает по крайней мере 2 символа от исходного значения. Число 2000 добавлено к результату, чтобы создать действительный год. Это число переходит в ДАТА в качестве аргумента год.
Значение месяца извлекается с помощью:
ПСТР(B5;4;2)
ПСТР извлекает символы 4-5. Результат переходит в ДАТА в качестве аргумента месяц.
Значение дня извлекается с помощью:
ЛЕВСИМВ(B5;2)
ЛЕВСИМВ захватывает последние 2 символа исходного текстового значения, которое переходит в ДАТА в качестве аргумента дня.
Три значения, извлеченные выше, входят в ДАТУ следующим образом:
= ДАТА (2016; «02»; «29»)
Хотя месяц и день предоставляются в виде текста, функция ДАТА автоматически преобразуется в числа и возвращает действительную дату.
Примечание: значение 2016 года автоматически было преобразовано в число при добавлении 2000.
Если исходное текстовое значение содержит дополнительные начальные или конечные символы пробела, вы можете добавить функцию СЖПРОБЕЛЫ для удаления:
= ДАТА(ПРАВСИМВ (СЖПРОБЕЛЫ (A1); 2) + 2000; ПСТР(СЖПРОБЕЛЫ (A1); 4;2); ЛЕВСИМВ(СЖПРОБЕЛЫ (A1); 2))
Преобразование текста в дату
=ДАТА (ЛЕВСИМВ(текст; 4); ПСРТ(текст; 5;2); ПРАВСИМВ(текст; 2))
Чтобы преобразовать текст в непринятом формате даты в правильную дату Excel, вы можете проанализировать текст и собрать правильную дату с формулой, основанной на нескольких функциях: ДАТА, ЛЕВСИМВ, ПСРТ и ПРАВСИМВ.
В показанном примере формула в C6:
= ДАТА(ЛЕВСИМВ(B6;4); ПСРТ(B6;5;2); ПРАВСИМВ(B6;2))
Эта формула отдельно извлекает значения года, месяца и дня и использует функцию ДАТА, чтобы собрать их в дату 24 октября 2000 года.
Когда вы работаете с данными из другой системы, вы можете использовать текстовые значения, которые представляют даты, но не понимаются как даты в Excel. Например, у вас могут быть такие текстовые значения:
текст (19610412) Дата представления (Апрель 12, 1961)
Excel не будет распознавать эти текстовые значения в качестве даты, поэтому для создания правильной даты вам нужно проанализировать текст в его компонентах (год, месяц, день) и использовать их для создания даты с помощью функции ДАТА.
Функция ДАТА принимает три аргумента: год, месяц и день. ЛЕВСИМВ извлекает самые левые 4 символа и поставляет это в ДАТА в качестве года. Функция ПСРТ извлекает символы 5-6 и поставляет это в ДАТА в качестве месяца, а функция ПРАВСИМВ извлекает самые правые 2 символа и поставляет их в ДАТА в качестве дня. Конечным результатом является правильная дата Excel, которая может быть отформатирована любым способом.
В строке 8 (непризнанный) формат даты дд.мм.гггг и формула в C8:
= ДАТА(ПРАВСИМВ(B8;4); ПСРТ(B8;4;2); ЛЕВСИМВ(B8;2))
Иногда встречаются даты в текстовом формате, которые должен распознавать Excel. В этом случае вы могли бы заставить Excel преобразовать текстовые значения в даты, добавив ноль к значению. Когда вы добавите нуль, Excel попытается принудить текстовые значения к числам. Поскольку даты — это всего лишь цифры, этот трюк — отличный способ преобразовать даты в текстовый формат, который действительно должен понимать Excel.
Чтобы преобразовать даты, добавив нуль, попробуйте Специальную вставку:
- Добавить ноль в неиспользуемую ячейку и скопировать в буфер обмена
- Выберите проблемные даты
- Специальная вставка> Значения> Добавить
Чтобы преобразовать даты путем добавления нуля в формулу, используйте:
= A1 + 0
Где A1 содержит непризнанную дату.
Другой способ заставить Excel распознавать даты — использовать текст в столбцах:
Выберите столбец дат, затем попробуйте Дата> Текст в столбах>Исправлено> Конец
Это иногда может исправить все сразу.
Автоматическая вставка текущей даты в ячейку при вводе данных
Предположим, у нас имеется таблица заказов, куда пользователь вводит номер заказа, имя клиента, сумму и т.д. Необходимо сделать так, чтобы при внесении номера заказа в столбец А — в столбце B напротив введенного заказа автоматически появлялись дата и время его занесения:
Чтобы реализовать такой ввод даты, нам потребуется простой макрос, который надо добавить в модуль рабочего листа. Для этого щелкните правой кнопкой мыши по ярлычку листа с таблицей и выберите в контекстном меню команду Исходный текст (View code).
В открывшееся окно редактора Visual Basic скопируйте этот текст этого макроса:
Private Sub Worksheet_Change(ByVal Target As Range) For Each cell In Target 'проходим по всем измененным ячейкам If Not Intersect(cell, Range("A2:A100")) Is Nothing Then 'если изменененная ячейка попадает в диапазон A2:A100 With cell.Offset(0, 1) 'вводим в соседнюю справа ячейку дату .Value = Now .EntireColumn.AutoFit 'выполняем автоподбор ширины для столбца B, чтобы дата умещалась в ячейке End With End If Next cell End Sub
При необходимости измените «чувствительный» диапазон «А2:А100» на свой собственный. Если необходимо вставлять дату не в соседний столбец, а правее — подставьте в оператор Offset(0,1) вместо 1 число побольше.
Закройте редактор Visual Basic и попробуйте ввести что-нибудь в диапазон А2:А100. В соседней ячейке тут же появится текущая дата-время!
Ссылки по теме
- Как сделать выпадающий календарь для быстрого ввода любой даты мышью в любую ячейку.
- Как Excel работает с датами
- Что такое макрос, как он работает, куда копировать текст макроса, как запустить макрос?
Ссылка на это место страницы:
#title
- Преобразование строки даты в дату
- Преобразовать дату в Юлианский формат
- Преобразование даты в месяц и год
- Преобразование даты в текст
- Преобразование даты текста дд/мм/гг в мм/дд/гг
- Преобразование текста в дату
- Скачать файл
Ссылка на это место страницы:
#punk01
= ЛЕВСИМВ (дата; 10) + ПСТР (дата; 12;8)
= LEFT (дата; 10) + MID (дата; 12;8)
Когда данные даты из других систем вставляются или импортируются в Excel, они могут не распознаваться как правильная дата или время. Вместо этого Excel может интерпретировать эту информацию только как текстовое или строковое значение.
Чтобы преобразовать строку даты в дату-время (дату со временем), вы можете разобрать текст на отдельные компоненты, а затем построить правильное время и дату.
В показанном примере мы используем приведенные ниже формулы.
Для извлечения даты формула в C5:
= ДАТАЗНАЧ (ЛЕВСИМВ(B5;10))
= DATEVALUE (LEFT(B5;10))
Чтобы извлечь дату, формула в D5:
= ВРЕМЗНАЧ (ПСТР (B5;12;8))
= TIMEVALUE (MID (B5;12;8))
Чтобы собрать дату-время, формула в E5:
Чтобы получить дату, мы извлекаем первые 10 символов значения с помощью ЛЕВСИМВ:
ЛЕВСИМВ(B5;10) // возвращает «2015-03-01»
LEFT(B5;10) // возвращает «2015-03-01»
Результатом является текст, поэтому, чтобы заставить Excel интерпретироваться как дата, мы помещаем ЛЕВСИМВ в ДАТАЗНАЧ, который преобразует текст в правильное значение даты Excel.
Чтобы получить время, мы извлекаем 8 символов из середины значения с ПСТР:
ПСТР (B5;12;8) // возвращает «12:28:45»
MID (B5;12;8) // возвращает «12:28:45»
Опять же, результатом является текст. Чтобы заставить Excel интерпретироваться как время, мы помещаем ПСТР в ВРЕМЗНАЧ, который преобразует текст в правильное значение времени Excel.
Чтобы построить окончательную дата-время, мы просто добавляем значение даты к значению времени.
Хотя этот пример извлекает дату и время отдельно для ясности, вы можете комбинировать формулы, если хотите. Следующая формула извлекает дату и время и объединяет их в один шаг:
= ЛЕВСИМВ(дата; 10) + ПСТР(дата; 12;8)
= LEFT(дата; 10) + MID(дата; 12;8)
Обратите внимание, что в этом случае значения ДАТАЗНАЧ и ВРЕМЯЗНАЧ не нужны, поскольку математическая операция (+) заставляет Excel автоматически принудительно передавать текстовые значения в числа.
Ссылка на это место страницы:
#punk02
= ГОД (дата) & ТЕКСТ (дата-ДАТА (ГОД (дата); 1;0); «000»)
= YEAR (дата) & TEXT (дата-DATE (YEAR (дата); 1;0); «000»)
Если вам нужно преобразовать дату в формат даты в Юлиане в Excel, вы можете сделать это, построив формулу, в которой используются функции ТЕКСТ, ГОД и ДАТА.
«Формат даты в Юлиане» относится к формату, в котором значение года для даты комбинируется с «порядковым днем для этого года» (т. Е. 14-й день, 100-й день и т. д.) для формирования штампа даты.
Есть несколько вариантов. Дата в этом формате может включать в себя 4-значный год (гггг) или год с двумя цифрами (гг), а номер дня может быть заполнен нулями или может быть не дополнен тремя цифрами. Например, на дату 21 января 2017 года вы можете увидеть:
Для двухзначного года + число дня без дополнения используйте:
= ТЕКСТ (B5; «гг») & B5-ДАТА(ГОД (B5); 1;0)
= TEXT (B5; «гг») & B5-DATE(YEAR (B5); 1;0)
Для двузначного года + число дня, дополненное нулями до 3-х мест:
= ТЕКСТ (B5; «гг») & ТЕКСТ (B5-ДАТА (ГОД (B5); 1;0); «000»)
= TEXT (B5; «гг») & TEXT (B5-DATE (YEAR (B5); 1;0); «000»)
Для четырехзначного года + число дня, дополненное нулями до 3-х мест:
= ГОД(B5) & ТЕКСТ(B5-ДАТА(ГОД(B5); 1;0); «000»)
= YEAR(B5) & TEXT(B5-DATE(YEAR(B5); 1;0); «000»)
Эта формула строит окончательный результат в 2 частях, объединенных конъюнкцией с оператором амперсанда (&).
Слева от амперсанда мы генерируем значение года. Чтобы извлечь 2-значный год, мы можем использовать функцию ТЕКСТ, которая может применять числовой формат внутри формулы.
Чтобы извлечь полный год, используйте функцию ГОД:
С правой стороны амперсанда нам нужно определить день года. Мы делаем это, вычитая последний день предыдущего года с того дня, с которым мы работаем. Поскольку даты — это просто серийные номера, это даст нам «n» день года.
Чтобы получить последний день года предыдущего года, мы используем функцию ДАТА. Когда вы даете ДАТА значение года и месяца и ноль на день, вы получаете последний день предыдущего месяца. Так:
Дает нам последний день предыдущего года, который на примере 31 декабря 2015 года.
Теперь нам нужно заполнить значение дня нулями. Опять же, мы можем использовать функцию ТЕКСТ:
ТЕКСТ (B5-ДАТА (ГОД (B5); 1;0); «000»)
TEXT (B5-DATE (YEAR (B5); 1;0); «000»)
Если вам нужно преобразовать юлианскую дату назад к обычной дате, вы можете использовать формулу, которая анализирует юлианскую дату и пробегает ее через функцию даты с месяцем 1 и днем, равным «n-му» дню. Например, это создаст дату с Юлианской датой ггггддд, например, 1999143.
= ДАТА(ЛЕВСИМВ(A1;4); 1; ПРАВСИМВ(A1;3)) // для ггггддд
Если у вас есть только номер дня (например, 100, 153 и т. д.), вы можете жестко закодировать год и вставить следующий день:
Где A1 содержит номер дня. Это работает, потому что функция ДАТА умеет настраивать значения вне диапазона.
Ссылка на это место страницы:
#punk03
Чтобы преобразовать нормальную дату Excel в формат ггггмм (например, 9/1/2017> 201709), вы можете использовать функцию ТЕКСТ.
В показанном примере формула в C5:
Функция TEКСT применяет заданный числовой формат к числовому значению и возвращает результат в виде текста.
В этом случае предоставляется формат числа «ггггмм», который присоединяется к 4-значному году с 2-значным значением месяца.
Если вы хотите отображать дату только с указанием года и месяца, вы можете просто применить формат пользовательских номеров «ггггмм» к датам. Это заставит Excel отображать год и месяц вместе, но не изменит базовую дату.
Ссылка на это место страницы:
#punk04
Если вам нужно преобразовать даты в текст (т. е. дату в преобразование строк), вы можете использовать функцию ТЕКСТ. Функция ТЕКСТ может использовать такие шаблоны, как «дд / мм / гггг», «гггг-мм-дд» и т. д., чтобы преобразовать действительную дату в текстовое значение.
Даты и время в Excel хранятся в виде серийных номеров и преобразуются в удобочитаемые значения «на лету» с использованием числовых форматов. Когда вы вводите дату в Excel, вы можете применить числовой формат, чтобы отобразить эту дату по своему усмотрению. Аналогичным образом, функция ТЕКСТ позволяет преобразовать дату или время в текст в предпочтительном формате.
Например, если дата 9 января 2000 года введена в ячейку A1, вы можете использовать TEКСТ, чтобы преобразовать эту дату в следующие текстовые строки следующим образом:
= ТЕКСТ(A1; «ммм») // «Янв»
= TEXT (A1; «ммм») // «Янв»
= TEКСТ(A1; «дд/мм/гггг») // «09/01/2012»
= TEXT (A1; «дд/мм/гггг») // «09/01/2012»
= ТЕКСТ(A1; «дд-ммм-гг») // «09-Янв-12»
= TEXT (A1; «дд-ммм-гг») // «09-Янв-12»
Вы можете использовать TEКСТ для преобразования дат или любого числового значения в фиксированном формате. Вы можете просмотреть доступные форматы, перейдя в меню «Формат ячеек» (Win: Ctrl + 1, Mac: Cmd + 1) и выбрав различные категории в списке слева.
Ссылка на это место страницы:
#punk05
= ДАТА(ПРАВСИМВ(A1;2) + 2000; ПСТР(A1;4;2); ЛЕВСИМВ(A1;2))
= DATE(RIGHT(A1;2) + 2000; MID(A1;4;2); LEFT(A1;2))
Чтобы преобразовать даты в текстовом формате дд/мм /гг в истинную дату в формате мм/дд/гг, вы можете использовать формулу, основанную на функции ДАТА. В показанном примере формула в C5:
= ДАТА(ПРАВСИМВ(B5;2) + 2000; ПСТР(B5;4;2); ЛЕВСИМВ (B5;2))
= DATE(RIGHT(A1;2) + 2000; MID(A1;4;2); LEFT(A1;2))
Который преобразует текстовое значение в B5 «29/02/16» в правильную дату Excel.
Ядром этой формулы является функция ДАТА, которая используется для сборки правильного значения даты Excel. Функция ДАТА требует действительных значений года, месяца и дня, поэтому они анализируются из исходной текстовой строки следующим образом:
Значение года извлекается с помощью функции ПРАВСИМВ:
ПРАВСИМВ получает по крайней мере 2 символа от исходного значения. Число 2000 добавлено к результату, чтобы создать действительный год. Это число переходит в ДАТА в качестве аргумента год.
Значение месяца извлекается с помощью:
ПСТР извлекает символы 4-5. Результат переходит в ДАТА в качестве аргумента месяц.
Значение дня извлекается с помощью:
ЛЕВСИМВ захватывает последние 2 символа исходного текстового значения, которое переходит в ДАТА в качестве аргумента дня.
Три значения, извлеченные выше, входят в ДАТУ следующим образом:
= ДАТА (2016; «02»; «29»)
= DATE (2016; «02»; «29»)
Хотя месяц и день предоставляются в виде текста, функция ДАТА автоматически преобразуется в числа и возвращает действительную дату.
Примечание: значение 2016 года автоматически было преобразовано в число при добавлении 2000.
Если исходное текстовое значение содержит дополнительные начальные или конечные символы пробела, вы можете добавить функцию СЖПРОБЕЛЫ для удаления:
= ДАТА(ПРАВСИМВ (СЖПРОБЕЛЫ (A1); 2) + 2000; ПСТР(СЖПРОБЕЛЫ (A1); 4;2); ЛЕВСИМВ(СЖПРОБЕЛЫ (A1); 2))
= DATE(RIGHT (TRIM (A1); 2) + 2000; MID(TRIM (A1); 4;2); LEFT(TRIM (A1); 2))
Ссылка на это место страницы:
#punk06
=ДАТА (ЛЕВСИМВ(текст; 4); ПСРТ(текст; 5;2); ПРАВСИМВ(текст; 2))
=DATE (LEFT(текст; 4); ПСРТ(текст; 5;2); RIGHT(текст; 2))
Чтобы преобразовать текст в непринятом формате даты в правильную дату Excel, вы можете проанализировать текст и собрать правильную дату с формулой, основанной на нескольких функциях: ДАТА, ЛЕВСИМВ, ПСРТ и ПРАВСИМВ.
В показанном примере формула в C6:
= ДАТА(ЛЕВСИМВ(B6;4); ПСРТ(B6;5;2); ПРАВСИМВ(B6;2))
= DATE(LEFT(B6;4); ПСРТ(B6;5;2); RIGHT(B6;2))
Эта формула отдельно извлекает значения года, месяца и дня и использует функцию ДАТА, чтобы собрать их в дату 24 октября 2000 года.
Когда вы работаете с данными из другой системы, вы можете использовать текстовые значения, которые представляют даты, но не понимаются как даты в Excel. Например, у вас могут быть такие текстовые значения:
текст (19610412) Дата представления (Апрель 12, 1961)
Excel не будет распознавать эти текстовые значения в качестве даты, поэтому для создания правильной даты вам нужно проанализировать текст в его компонентах (год, месяц, день) и использовать их для создания даты с помощью функции ДАТА.
Функция ДАТА принимает три аргумента: год, месяц и день. ЛЕВСИМВ извлекает самые левые 4 символа и поставляет это в ДАТА в качестве года. Функция ПСРТ извлекает символы 5-6 и поставляет это в ДАТА в качестве месяца, а функция ПРАВСИМВ извлекает самые правые 2 символа и поставляет их в ДАТА в качестве дня. Конечным результатом является правильная дата Excel, которая может быть отформатирована любым способом.
В строке 8 (непризнанный) формат даты дд.мм.гггг и формула в C8:
= ДАТА(ПРАВСИМВ(B8;4); ПСРТ(B8;4;2); ЛЕВСИМВ(B8;2))
= DATE(RIGHT(B8;4); ПСРТ(B8;4;2); LEFT(B8;2))
Иногда встречаются даты в текстовом формате, которые должен распознавать Excel. В этом случае вы могли бы заставить Excel преобразовать текстовые значения в даты, добавив ноль к значению. Когда вы добавите нуль, Excel попытается принудить текстовые значения к числам. Поскольку даты — это всего лишь цифры, этот трюк — отличный способ преобразовать даты в текстовый формат, который действительно должен понимать Excel.
Чтобы преобразовать даты, добавив нуль, попробуйте Специальную вставку:
— Добавить ноль в неиспользуемую ячейку и скопировать в буфер обмена
— Выберите проблемные даты
— Специальная вставка> Значения> Добавить
Чтобы преобразовать даты путем добавления нуля в формулу, используйте:
Где A1 содержит непризнанную дату.
Другой способ заставить Excel распознавать даты — использовать текст в столбцах:
Выберите столбец дат, затем попробуйте Дата> Текст в столбах>Исправлено> Конец
Это иногда может исправить все сразу.
Ссылка на это место страницы:
#punk07
Файлы статей доступны только зарегистрированным пользователям.
1. Введите свою почту
2. Нажмите Зарегистрироваться
3. Обновите страницу
Вместо этого блока появится ссылка для скачивания материалов.
Привет! Меня зовут Дмитрий. С 2014 года Microsoft Cretified Trainer. Вместе с командой управляем этим сайтом. Наша цель — помочь вам эффективнее работать в Excel.
Изучайте наши статьи с примерами формул, сводных таблиц, условного форматирования, диаграмм и макросов. Записывайтесь на наши курсы или заказывайте обучение в корпоративном формате.
Подписывайтесь на нас в соц.сетях:
Отображение в MS EXCEL формата ДАТЫ в ТЕКСТовой строке
При составлении формул для отображения в ячейке фразы содержащей текст и дату, например, «Сегодня 02.10.10», можно получить вот такой результат: «Сегодня 40453», т.е. дата будет отражена в числовом виде. Решим задачу путем предварительного преобразования даты в текст в нужном нам формате.
По аналогии с примером из статьи Отображение ЧИСЛОвого формата в ТЕКСТовой строке, рассмотрим, как преобразовать дату в текстовый формат. Начнем сразу с примера.
Введем в ячейку А1 дату 02.10.10. В ячейке В1 попробуем отразить фразу: «Сегодня 02.10.10». Для этого в B1 пишем формулу: =»Cегодня «&A1 . В результате получим: «Сегодня 40453». EXCEL подставил вместо даты «02.10.10» соответствующее ему число 40453.
Для отображения даты в нужном нам формате используем функцию ТЕКСТ() : =»Cегодня «&ТЕКСТ(A1;»дд.ММ.гг») . Получим желаемое — «Сегодня 02.10.10». Обратите внимание, что ММ (Месяцы) записаны ПРОПИСНЫМИ буквами, чтобы отличить их от минут, которые записываются строчными (см. файл примера ).
Приведем другие форматы:
«дддд» (день недели);
«ддд» (сокращенный день недели);
«д.М.гг»;
«дд.ММ.гг Ч:мм»;
«ч:мм:сс AM/PM»;
«ДД МММ ГГГГ»;
СОВЕТ:
Подробнее о пользовательских форматах дат и времени читайте в одноименной статье Пользовательский формат даты и времени.
Преобразование дат из текстового формата в формат даты
В некоторых случаях даты могут быть отформатированы и храниться в ячейках в виде текста. Например, возможно, вы ввели дату в ячейку, отформатированную как текст, или данные были импортированы или вставлены из внешнего источника данных в виде текста.
Даты, отформатированные как текст, выравниваются по левому краю в ячейке (вместо выравнивания по правому краю). Если включена Проверка ошибок , Текстовая дата с двумя цифрами года также может помечаться индикатором ошибки: .
Поскольку функция проверки ошибок в 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.
Преобразовать даты в текст (Формулы/Formulas)
настроили формат ячеек текст» ничего не букву «г» и изменил некоторые цифры. функций» в функциях формула считать не окно и сменитьА для 300Например: In SelectionMichael_SMichael_S текстовое значение, но стаж, возраст. Про таблицы столбец А картинку в ячейке,
Excel «Дата».
пишем, нажимаем один сделать эти даты Или, например, составляем «Текстовые» выбираем функцию
будет. Подробнее об формат, смотрите в тыс. лучше -DateValue(Format(«20010116», «0000-00-00»))
t = rCell.Text: вопрос не понятен. : необходимо преобразовать и эти способы читайте с датами, то ссылку, ячейку впреобразует формат значенияВ ячейке С26 раз на пробел,
Макрос преобразования даты в текст, и время в текст (Макросы Sub)
в формате «Дата». отчет. Нам нужно «Текст». Диалоговое окно
этом читайте в статье «Формат Excel» вот такбудет распознано правильноrCell.NumberFormat = «@» если преобразовывать из200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub Текст() время в текстовое статью «Как быстро можно скрыть этот формуле, т.д. Смотрите
ячейки в текстовый
тоже стоит дата, п.ч. ничего не
Просто, установив в
посмотреть предыдущую цифру,
функции «Текст» заполнили
статье «Преобразовать текст
тут.
Sub CreateTime2() в любой локали. rCell.Formula = t
двух ячеек вDim cell, a$ значение, но без посчитать стаж в столбец. об этих способах формат (число будет
но указан порядковый должно стоять после ячейке формат «Дата», которая стояла в
так. в число Excel».Уточним еще один моментDim cell As
РавильNext
одну — тоFor Each cell добавления 0 в Excel».
Или, скопировать столбец в статье «Как написано цифрами, не номер даты. В цифр.
ничего не получится. ячейке, т.д. Подробнее Нажимаем «ОК». Получилась
Теперь рассмотрим,
- Range, ra As
: мне надо «DD/MM/YYYY»End Sub
куда? Если в
In Selection
начало значения 9:00:01,
Мурад
В и вставить закрепить в Excel
прописью). таком формате Excel
В этом диалоговом
Нам поможет о работе с
такая формула. =ТЕКСТ(А7;»ДД.ММ.ГГГГ»)как преобразовать порядковый номер
формат даты в Excel. Range: Application.ScreenUpdating =
смотрите файлromik85
третью -то зачемa = Format(cell, т.е не должно
: Всем привет! Пытался
в новый столбец
заголовок, строку, ячейку,У нас такая
хранит даты. Чтобы
окне мы написалифункция в этой функцией смотрите Копируем формулу из дат в форматВ Excel два Falselapink2000: макрос, можно формулой.
«h:mm:ss») быть после преобразования связать несколько файлов
значения ячеек. А ссылку, т.д.». таблица. В столбце преобразовать дату в условия, как должноExcel «ЗАМЕНИТЬ». в статье «Журнал ячейки В7 вниз «Дата» формата – формат
Set ra =: Смотрите мой предыдущийSkyPro типа такойcell.NumberFormat = «@» 09:00:01
по уникальному полю столбцs с датамиРассмотрим, С написаны даты нужном нам формате, быть написано числоИтак, убираем букву изменений в Excel».
по столбцу. Получилось.ячейки Range([C1], Range(«C» &
ответ (подсказка: первая, то что надо,200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ТЕКСТ(RC1+RC2;»ДД.ММ.ГГГГч:мм:сс»)
cell.Value = a200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub Текст() — коду специальности. и формулами удалить.как преобразовать число в
в формате «Дата». достаточно установить обычным
по формату «Дата», «г» в конце
Здесь рассмотрим, как так. У нас такая
и формат Rows.Count).End(xlUp))
строка) спасибо) ++++
(между
Next cell
For Each cell
Обнаружилось, что коды
Подробнее о способах
дату Нам нужно эти способом формат даты в который будем дат.
преобразовать в
Преобразовать текст в дату
Даты в столбце таблица с датами,значенияra.NumberFormat = «General»
Если же вамтему прошу закрыть)ГГГГ
MsgBox «готов» In Selection
воспринимается программой как копирования, смотрите вExcel
даты перевести в в ячейке. (Формат
преобразовывать это значение.В ячейке В1Excel текст в дату
B написаны как написанными порядковыми номерами., написанного в ячейке.ra.Value = Evaluate(«TEXT(« надо формулой, яРавильиEnd Scell.Formula = cell.Text даты, а не статье «Копирование в
и текст (формат текст). ячейки -> Дата). Нажимаем «ОК». вставляем формулу. Наи
текст (текстовый формат
Преобразуем порядковые номера дат
Формат ячейки & ra.Address(, ,
бы сделал так:: Здравствуйте, нужно преобразоватьчч
ubNext cell как текст. Собственно, Excel».
дату в число.Выделяем ячейку D26. НаТеперь этот столбец
Формула получится такая.
закладке «Формулы» вдату в текст Excelзначений в привычные для
в , True) &=—ТЕКСТ(A1;»00-00-00″) текст 160201 встолько пробелов, сколькоSkyPro
MsgBox «готов» вопрос. Как изменитьЕсли по какой-тоНапример, в ячейке закладке «Главная» в
можно сортировать по
=ЗАМЕНИТЬ(A26;11;1;»»)Копируем формулу по
разделе «Библиотека функций». Если мы скопировали). Формат нас даты.
Excel «,»»00-00-00″»)»)Равиль
дату 16.02.2001
нужно): Странная задача..
End Sub формат кодов специальностей
причине не считаются
Excel дата написана
разделе «Библиотека функций» дате. Как это столбцу. Получилось так.
Функция ДАТАЗНАЧ для преобразования текста в дату в Excel
Функция ДАТАЗНАЧ в Excel предназначена для работы с текстовыми данными в формате ДАТА. Она используется для преобразования текстовых данных в формат Дата и возвращает числовое значение, характеризующее указанную дату.
Как преобразовать дату в текст в Excel
В Excel каждой дате соответствует определенное число дней, прошедших с принятой точки отсчета – 1 января 1900 года. Функция ДАТАЗНАЧ возвращает число, соответствующее числовому представлению даты, которая указана в виде текста, с учетом указанной выше особенности хранения дат в Excel. Формат возвращаемого значения зависит от настроек формата ячейки, в которой будет выведен результат вычислений.
Зачастую даты в Excel записывают без использования функции ДАТА. Табличный редактор определяет такие значения как обычные текстовые строки. Поэтому процедуры форматирования, сортировки по дате, а также различные вычисления (например, разница дат) приводят к некорректным результатам или появлению ошибок. Поэтому функция ДАТАЗНАЧ полезна для преобразования текстовых значений к данным формата Дата.
Пример 1. В таблице Excel находится столбец, в котором хранятся даты как текстовые строки, при этом записи имеют вид: «28 сентября 2018 года». Преобразовать эти значения в данные формата Дата.
Вид таблицы данных:
Для получения даты в формате, поддерживаемом Excel, используем следующую функцию:
Единственный аргумент состоит из подстрок, склеенных амперсандами (&):
- Функция ЛЕВСИМВ возвращает номер дня (первые два символа строки, содержащейся в ячейке A2). Очень важно, чтобы однозначные номера дней (например, 8 апреля) записывались как 08 апреля (имели нуль в начале), иначе будет возникать ошибка.
- Комбинация функций ПСТР и ЛЕВСИМВ выделяет из строки три первых символа названия месяца и возвращает их.
- Комбинация функций ПСТР и ПРАВСИМВ выделяет 4 символа, соответствующие числовому представлению года.
Растянем формулу вниз по столбцу, чтобы рассчитать остальные значения:
Таким образом мы преобразовали текстовые строки в формат даты, которые теперь можно использовать для вычислений в формулах.
Обработка значений даты в текстовом формате в Excel
Пример 2. В таблице Excel указаны даты неверного формата (вместо записи вид «13.06.2019» используется 13_06_2019). Такие данные указаны в двух столбцах. В соседнем необходимо вычислить разницу дней между указанными датами.
Вид таблицы данных:
Для расчетов используем следующую формулу:
Для получения текстовой строки, которая может быть преобразована в данные формата Дата с помощью функции ДАТАЗНАЧ, используем функцию ПОДСТАВИТЬ, которая выполняет замену символов «_» на «.». Результат вычитания двух полученных дат – искомое значение.
Растянем формулу вниз по столбцу чтобы рассчитать все значения:
Особенности синтаксиса функции ДАТАЗНАЧ в Excel
Функция ДАТАЗНАЧ имеет следующую синтаксическую запись:
Единственным аргументом (обязателен для заполнения) является дата_как_текст – текстовое представление даты, которое может быть преобразовано к данным формата Дата. В Excel есть несколько допустимых вариантов записи дат: 13-июн-2019, 13.06.2019. Любой из этих вариантов записи может быть использован в качестве аргумента функции ДАТАЗНАЧ.
- Если текстовые строки, характеризующие даты, хранятся в ячейках Excel, большинство функций выполняют преобразования данных к требуемому типу автоматически. Однако, во избежание возможных ошибок, рекомендуется использовать функцию ДАТАЗНАЧ.
- Рассматриваемая функция ориентируется на показания часов, встроенных в ПК, на котором используется редактор Excel. Если в качестве текстового представления даты указана неполная дата, например «13.06», данные о годе будут взяты из текущего времени. Например, функция =ДАТАЗНАЧ(“13.06”) вернет значение 43629, которое после установления формата Дата для ячейки будет преобразовано в 13.06.2019.
- Если в качестве аргумента функции ДАТАЗНАЧ было передано значение, не преобразуемое к формату Дата (например, =ДАТАЗНАЧ(23), =ДАТАЗНАЧ(ИСТИНА), =ДАТАЗНАЧ(“333”)), будет возвращен код ошибки #ЗНАЧ!
- Для склеивания значений, содержащихся в отдельных ячейках, чтобы «собрать» их в одну строку, характеризующую значение даты, следует использовать символ “&”. Например, в ячейках A1, B1, C1 хранятся значения 10, 3 и 2019 соответственно. Чтобы получить данные формата Дата и записать их в отдельную ячейку, можно использовать следующую функцию — =ДАТАЗНАЧ(A1&».»&B1&».»&C1).
Дата и месяц прописью в Excel
Узнаем как написать дату и месяц прописью в Excel (в том числе в именительном и родительном падежах).
Приветствую всех, дорогие читатели блога TutorExcel.Ru.
Подписывая какие-либо документы мы помимо собственного автографа очень часто вписываем туда и текущую дату в виде числа, месяца и года. При этом мы почти никогда там не встречаем месяц записанный в численном формате. Ведь, например, дата записанная как 12.11.2016 куда сложнее воспринимается и читается чем 12 ноября 2016 г.
Вот и в Excel иногда требуется указать дату в таком виде, поэтому давайте подробно разберемся какие у нас есть варианты реализации.
Запись с помощью настройки формата ячейки
В Excel существует достаточно большое количество форматов отображения даты.
Давайте запишем дату в произвольную ячейку и перейдем в ее формат (щелкаем по ячейке правой кнопкой мыши и выбираем Формат ячейки, или просто нажимаем сочетание клавиш Ctrl + 1).
В открывшемся окне нас интересует вкладка Число:
Среди форматов дат выбираем запись месяца прописью и получаем:
Можно выбрать запись как со звездочкой (символ «*»), так и без, при этом различие отображения будет заключаться в изменении вида записи при смене настроек времени и даты операционной системы.
Идем дальше и перейдем к формульному решению задачи.
Запись с помощью формул
Как мы уже разбирали в примере визуализации половозрастной пирамиды, формат любой ячейки записывается с помощью маски отображения. В случае с датой наиболее популярный вид записи (например, для 12.11.2016) выглядит как ДД.ММ.ГГГГ, где Д — день, М — месяц, Г — год.
Поэтому такого же результата мы сможем добиться воспользовавшись стандартной функцией ТЕКСТ (в английской версии TEXT), которая преобразует заданный текст в определяемый нами формат записи.
В качестве формата записи в данном случае указываем [$-FC19]Д ММММ ГГГГ г.;@, применяем функцию для даты и получаем:
Чуть подробнее остановимся на формате.
В записи формата [$-FC19] как раз и отвечает за корректный формат отображения даты в родительном падеже (можете попробовать убрать [$-FC19] и посмотреть что получится).
Если же нужно отобразить месяц не на русском, а, например, на украинском языке, то используйте [$-FC22] (для белорусского [$-FC23]):
Ок, с полной записью даты и месяца разобрались, но что если нам нужен только месяц?
Как записать месяц прописью?
Как и в примере выше воспользуемся функцией ТЕКСТ. Формат «ММММ» даст нам полную запись месяца (в именительном падеже):
Ещё одним способом является совместное применение функций МЕСЯЦ (в английской версии MONTH) и ВЫБОР (английский вариант CHOOSE).
Месяц вернёт нам порядковый номер месяца указанной даты (от 1 до 12), а ВЫБОР сопоставит числовому значению текстовое (где 1 — январь, 2 — февраль, …, 12 — декабрь):
Если же мы пишем число с месяцем и годом, то зачастую месяц нужно указать в родительном падеже (а не в именительном как в примере выше), например, 2 февраля 2015 года или 14 августа 2012 года и т.п.
Здесь нам опять поможет формат [$-FC19]ММММ, который записывает месяц в дате в родительном падеже, отличие от предыдущего варианта записи только в том, что мы убрали из записи день и год:
Есть и альтернативный вариант. На помощь опять придут уже знакомые функции МЕСЯЦ и ВЫБОР, только тут вместо именительного падежа для месяцев прописываем родительный (меняем окончания):
На этом все. Выбирайте наиболее понравившийся и удобный для вас способ.
Спасибо за внимание!
Если у вас остались вопросы по теме статьи — пишите в комментариях.