Почему не меняется формат даты в Excel? Возможной причиной является конфликт форматов или блокировка стиля ячеек, неправильное выполнение работы или временный сбой в работе приложения. Для устранения попробуйте перезапустить программу или воспользуйтесь одним из приведенных в статье способов. Ниже рассмотрим основные причины и способы решения такой проблемы в Excel.
Причины и пути решения
Для решения проблемы нужно понимать, почему Эксель не меняет формат даты при любых попытках. К возможным причинам стоит отнести:
- Конфликт форматов и блокировка стиля ячейки.
- Несоответствие заданных стилей Excel.
- Неправильное выполнение работы.
- Временные сбои в работе программы.
- Неправильные региональные настройки.
В ситуации, когда не меняется дата в Эксель, можно воспользоваться одним из рассмотренных ниже решений.
Способ №1:
- Выберите столбец даты в Excel.
- Зайдите в раздел «Данные» и выберите «Text to Columns».
- На первом экране поставьте переключатель «delimited».
- Кликните на кнопку «Далее».
- Снимите флажки-разделители и кликните на кнопку «Далее».
- В секции «Формат данных столбца» выберите «Дату».
- Жмите «Готово».
Решение №2:
- Выделите ячейки, где не меняется дата в Экселе.
- Жмите на сочетание Ctrl+1.
- В разделе «Формат ячеек» откройте вкладку «Число».
- В перечне «Категория» выберите требуемый раздел.
- Перейдите в «Тип» и укажите подходящий вариант форматирования в Excel. Для предварительного просмотра перейдите в раздел «Образец». Если сделанный вариант не устраивает, можно внести изменения и снова выполнить проверку — меняется отображение или нет.
Метод №3:
- Жмите нужную ячейку, где формат даты в Эксель не меняется.
- Кликните сочетание Ctrl+Shift+#.
Способ №4:
- Используйте формулу: =DATE(MID(A1,FIND(«,»,A1)+1,5),MATCH(LEFT(A1,3),{«Jan»;»Feb»;»Mar»;»Apr»;»May»;»Jun»;»Jul»;»Aug»;»Sep»;»Oct»;»Nov»;»Dec»},0),MID(SUBSTITUTE(A1,»,»,» «),5,5)) для перевода в REAL.
- Проверьте, что отображение в Excel меняется с учетом предпочтений.
Такой вариант может сработать в случае неправильных региональных настроек и невозможности изменения форматирования для дня, строки и времени. Представленную форму Excel можно сделать проще, если представить больше сведений о формате ввода. Но даже в таком случае все должно работать корректно. Кроме того, при желании сохранить часть времени можно воспользоваться формулой +RIGHT(A1,11).
Решение №5:
- Загрузите лист Excel, где не меняется стиль отображения, на Гугл Док.
- Откройте файл с помощью электронной Гугл-таблицы.
- Выберите весь столбец с информацией.
- Установите тип формата для даты. На данном этапе можно выбрать любой подходящий вариант.
- Закройте электронную таблицу Гугл в формате .xlsx.
Метод №6:
- Копируйте несколько ячеек, где не меняется форматирование даты в Excel, в блокнот.
- Жмите на Clear All.
- Вставьте содержимое ячейки в блокнот обратно в те же ячейки.
- Установите их в качестве текущего дня в нужном варианте и т. д.
Как поменять формат в Excel
Распространенная причина, почему софт не меняет дату в Экселе — неправильные действия пользователя. Для решения проблемы необходимо правильно сделать эту работу. Здесь существует несколько путей.
Вариант №1:
- Зайдите во вкладку «Главная».
- Перейдите в раздел «Число».
- Жмите на кнопку вызова диалогового окна (находится над строчкой «Число»).
- В списке «Категория» выберите нужный пункт.
- Перейдите в раздел «Тип» и установите нужный вариант отображения в Excel.
Тип форматирования, который начинается со звездочки, влияют за изменение параметров дня / времени, установленных на панели управления. В ином случае этого влияния нет. После этого необходимо выбрать нужный язык, который меняется с помощью специального переключателя. Выбор осуществляется из доступного перечня (русский язык предусмотрен).
Вариант №2:
- Зайдите во вкладку XLTools.
- В группе «Дата и время» откройте выпадающий перечень.
- Войдите в раздел «Изменить формат даты и времени».
- Задайте область поиска. Здесь указывается выбранный диапазон, рабочий лист, книга, открытые книги.
- Выберите подходящий вариант из перечня, принятый в стране и на нужном языке. По желанию задайте пользовательский формат.
- Кликните на кнопку «Готово».
Если Excel не меняет формат даты, это не повод беспокоиться. В большинстве случаев проблема связана с неправильным выполнением работы или временными сбоями в работе приложения. Перед тем, как предпринимать какие-либо шаги, попробуйте сохраниться и перезапустить Excel. Если же это не дало результата, проверьте возможность применения одного из рассмотренных выше методов.
В комментариях расскажите, приходилось ли вам сталкиваться с ситуацией, когда не работает дата в Эксель или не меняется ее форматирование. Поделитесь, какой из приведенных выше методов сработал, и какие еще варианты можно использовать.
Отличного Вам дня!
Sep 23 2020
12:31 PM
@lotusana003
As variant you have texts, not dates, but better to check sample file with few records.
Sep 23 2020
12:32 PM
@lotusana003
The values are probably text instead of dates. Could you attach a small sample workbook without sensitive information?
Sep 23 2020
12:44 PM
I am sending an excel sheet with only the date columns for the new and old data sheet. Basically I have to concatenate each of the cells and then match the final concatenated data using the «IF» statement. But since the date formats for both the sheets differ, so the end result is a mismatch. Please have look.. I was wondering if had something to do with the settings of my Windows Excel. @Hans Vogelaar
Sep 23 2020
12:53 PM
@lotusana003
The values are text indeed. You can convert each of the columns to ‘real’ dates as follows:
- Select a column with dates, e.g. A2:A158.
- On the Data tab of the ribbon, click ‘Text to Columns’.
- Click ‘Next >’ then ‘Next >’ again.
- In Step 3, select YMD from the Date dropdown.
- Click Finish.
You should now be able to compare the dates.
Sep 23 2020
01:05 PM
I ma sending a sample file with the dates. Please have a look. @Sergei Baklan
Sep 23 2020
01:38 PM
@lotusana003
That’s exactly as @Hans Vogelaar said. It works column by column (you can’t apply wizard at once for more than one column). And you have different source format in new and old sheets. In attached file I converted for Column A only
old sheet:
new sheet:
Sep 24 2020
10:52 AM
Dear Sir,
The date format in the old data sheet can be changed, the date format in the new data sheet is creating problems. If you could perform concatenation in each of the sheets using the formula-
=CONCATENATE(A2,B2,C2,TEXT(D2,»YYYY-MM-DD»),TEXT(E2,»YYYY-MM-DD»),F2,TEXT(G2,»YYYY-MM-DD»),TEXT(H2,»YYYY-MM-DD»),I2,J2,K2,L2,M2,N2,O2,P2,Q2,R2). I am sending the worksheet where I have performed a calculation. Please have a look,I basically want to match the date formats ,@Sergei Baklan
Sep 24 2020
01:22 PM
@lotusana003
I’m sorry, but I didn’t find where is the formula from the post within workbooks. It has lot of sheets and different columns, not clear to what and which formula you’d like to apply. To illustrate just couple of records in one sheet will be enough.
If you apply formula like TEXT(D2,»YYYY-MM-DD») for the D2 which has text value, it will do nothing. You may simply use D2, result will be the same. If you’d like to present the text in another format, first you shall convert it to date (aka number) and after that use TEXT() with new format. You may convert entire column first, or within formula. If in your locale default date format is the same as in text, you may use TEXT(VALUE(D2),»YYYY-MM-DD»). If not, first parse the text and convert to date then, like TEXT(DATE(RIGHT(D2,4),LEFT(D2,2),MID(D2,4,2)),»YYYY-MM-DD»)
Sep 26 2020
01:00 PM
sheet tab-new data sheet.
it displays columns that have dates from the new sheet.I have used the formula «=CONCATENATE(TEXT(A2,»YYYY-MM-DD»),TEXT(B2,»YYYY-MM-DD»),TEXT(C2,»YYYY-MM-DD»))».
The date format does not change.
the column labeled new concat- displays concatenated data for all the 3 cells.
Sheet tab-old data sheet
it displays the columns that have date formats from the old data sheet.
I have used the same formula «=CONCATENATE(TEXT(A2,»YYYY-MM-DD»),TEXT(B2,»YYYY-MM-DD»),TEXT(C2,»YYYY-MM-DD»))».
the column labeled old concat- displays concatenated data for all the 3 cells.
Sheet tab-result:the old concatenated data and new concatenated data are placed side by side.
then the condition is applied: =IF(A2=B2,1,0).
All the results are displaying 0, even though the dates are same, but formats are different.
My aim is to match the results, i.e to bring the output as 1.
Please help me to do so.
@Sergei Baklan
Sep 26 2020
01:33 PM
@lotusana003
Look, if you use formula like
=CONCATENATE(TEXT("a","YYYY-MM-DD"),TEXT("b","YYYY-MM-DD"),TEXT("c","YYYY-MM-DD"))
it returns exactly the same as
=CONCATENATE("a","b""c")
i.e. «abc». TEXT() function changes nothing in value if it is text, doesn’t matter which format do you use. In the file practically all data are texts in form of dates. Dates in Excel are sequential integers where 1 is equal to Jan 01, 1900. You may apply any format to the text «07/28/2020», Excel will keep it as text «07/28/2020». But if you enter in any cell number 44040 and apply to it «YYYY-MM-DD» format, it will be shown as date 2020-07-28. Behind it’s still will be number, not text.
Thus first you shall convert texts to dates as it was explained earlier. With that you may concat without any formatting if only you need to have strings to compare, like
Oct 01 2020
12:37 PM
Dear Sir,
I am trying to apply text to columns on the New Data Tab of the excel sheet that i have sent- but it is not being converted to dates.
I have used the exact method-: select column of the excel sheet>Data tab on the ribbon>Text to columns>Next>Next>choose YMD>Finish,
I even selected the columns one at a time. The data on the New Data Excel Tab hasn’t shown any change. Can you please confirm if something is wrong with the dates on the New Data Tab
@Sergei Baklan
Oct 01 2020
02:33 PM
@lotusana003
It works, please check attached. Hard to say what was wrong in your case.
Oct 01 2020
03:12 PM
@lotusana003
What the previous ones, who very well known of the subject — Excel, told you is absolutely correct.
Just add the columns to the format where you wanted, as I understood.
If this is not what you are asking for, please ignore my message.
Have a nice day.
Nikolino
I know that I know nothing (Socrates)
Oct 02 2020
06:51 AM
Dear Sir,
Could you please send a screen shot of this settings window on your computer. This is the screen shot of the settings on my computer. I don’t know whether there is any issue in the settings because of which the date formats are not changing.
@Sergei Baklan
Oct 02 2020
07:16 AM
Take a look at Sergei’ second post, second image again.
You must make sure it is MDY
The rows with failed conversions in your exempe files have “days” that are bigger than 12 so I guess you used DMY.
Oct 02 2020
07:47 AM
@lotusana003 , I have exactly the same settings. Perhaps you have texts instead of dates.
Oct 02 2020
07:50 AM
@lotusana003
In your case it shall be not YMD, but MDY. Here is format of origin, to the one you’d like to have.
Oct 02 2020
08:21 AM
Hello Mr. Baklan, as far as I have seen the first two columns in the worksheet with the date have a nomenclature Africaans, maybe that is the problem?
… that the first two columns have a different bit scheme than the third.
Nikolino
Последнее обновление Ноя 12, 2021
Чтобы исправить различные проблемы с ПК, мы рекомендуем DriverFix: это программное обеспечение будет поддерживать ваши драйверы в рабочем состоянии, тем самым защищая вас от распространенных компьютерных ошибок и сбоев оборудования. Проверьте все свои драйверы сейчас за 3 простых шага:
- Загрузите DriverFix (проверенный файл для загрузки).
- Нажмите «Начать сканирование», чтобы найти все проблемные драйверы.
- Нажмите «Обновить драйверы», чтобы получить новые версии и избежать сбоев в работе системы.
- DriverFix в этом месяце скачали 502 786 читателей.
Если ваше программное обеспечение Excel не меняет формат даты, вы должны знать, что не только вы столкнулись с этой проблемой.
Эта проблема, похоже, распространяется на различные платформы и версии Excel, но не волнуйтесь, мы дадим вам пошаговые инструкции по ее устранению.
Внимательно следуйте инструкциям, представленным в этом руководстве, чтобы избежать нежелательных изменений.
Попробуйте этот метод, если Excel не меняет формат даты
- Щелкните вкладку «Данные» в верхнем меню экрана.
- Выберите в меню опцию Текст в столбцы.
- Установите флажок рядом с опцией с разделителями, чтобы активировать ее.
- Дважды нажмите кнопку «Далее», чтобы перемещаться по страницам настройки.
- Выберите «Дата» -> щелкните раскрывающееся меню -> выберите пользовательский параметр «MDY».
- Щелкните кнопку Готово.
- Выделите любую пустую ячейку в документе Excel -> нажмите клавиши Ctrl + 1 на клавиатуре.
- Выберите параметр Пользовательский формат внизу списка.
- В текстовом поле -> введите ГГГГ / ММ / ДДД -> нажмите ОК.
Не можете открывать файлы Excel в браузере? Исправьте это с помощью этих методов
Вот как изменить формат даты по умолчанию в Windows
Поскольку в некоторых случаях форматы, используемые для дат, могут сбивать с толку, рекомендуется изменить формат даты Windows по умолчанию, чтобы упростить процесс в долгосрочной перспективе.
Конечно, этот конкретный параметр будет зависеть от ваших требований, но вы можете выполнить следующие действия, чтобы установить его:
Нажмите клавиши Win + R -> введите control international -> нажмите Enter.
На вкладке Форматы -> проверьте или измените доступные форматы по умолчанию. Щелкните раскрывающиеся списки и выберите нужный вариант. Нажмите ОК, чтобы сохранить настройки.
Примечание. Изменение параметров формата даты Windows повлияет на все приложения, установленные на вашем компьютере, а не только на параметры, имеющиеся в MS Excel.
Вывод
В сегодняшней статье с практическими рекомендациями мы обсудили наиболее эффективный способ работы с Excel без изменения формата даты.
Если вы нашли это руководство полезным, не забудьте сообщить нам об этом. Вы можете сделать это в разделе комментариев под этой статьей.
Источник записи: windowsreport.com
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.
Нужна дополнительная помощь?
Исправление чисел, превратившихся в даты
При импорте в Excel данных из внешних программ, иногда возникает весьма неприятная проблема — дробные числа превращаются в даты:
Так обычно происходит, если региональные настройки внешней программы не совпадают с региональными настройками Windows и Excel. Например, вы загружаете данные с американского сайта или европейской учётной системы (где между целой и дробной частью — точка), а в Excel у вас российские настройки (где между целой и дробной частью — запятая, а точка используется как разделитель в дате).
При импорте Excel, как положено, пытается распознать тип входных данных и следует простой логике — если что-то содержит точку (т.е. российский разделитель дат) и похоже на дату — оно будет конвертировано в дату. Всё, что на дату не похоже — останется текстом.
Давайте рассмотрим все возможные сценарии на примере испорченных данных на картинке выше:
- В ячейке A1 исходное число 153.4182 осталось текстом, т.к. на дату совсем не похоже (не бывает 153-го месяца)
- В ячейке A2 число 5.1067 тоже осталось текстом, т.к. в Excel не может быть даты мая 1067 года — самая ранняя дата, с которой может работать Excel — 1 января 1900 г.
- А вот в ячейке А3 изначально было число 5.1987, которое на дату как раз очень похоже, поэтому Excel превратил его в 1 мая 1987, услужливо добавив единичку в качестве дня:
- То же самое случилось и в ячейке А4, где изначально было число 12.6923. Причем 6923-й год Excel тут нисколько не смутил — для него главное, чтобы дата была не раньше 1900 года. Так что добро пожаловать в далекое будущее:
- Единственное, что распознаётся корректно — это числа без дробной части (число 1000 в ячейке А6). И на том спасибо
Вот такие варианты. И если текстовые числа ещё можно вылечить банальной заменой точки на запятую, то с числами превратившимися в даты такой номер уже не пройдет. А попытка поменять их формат на числовой выведет нам уже не исходные значения, а внутренние коды дат Excel — количество дней от 01.01.1900 до текущей даты:
Лечится вся эта история тремя принципиально разными способами.
Способ 1. Заранее в настройках
Если данные ещё не загружены, то можно заранее установить точку в качестве разделителя целой и дробной части через Файл — Параметры — Дополнительно (File — Options — Advanced):
Снимаем флажок Использовать системные разделители (Use system separators) и вводим точку в поле Разделитель целой и дробной части (Decimal separator).
После этого можно смело импортировать данные — проблем не будет.
Способ 2. Формулой
Если данные уже загружены, то для получения исходных чисел из поврежденной дата-тексто-числовой каши можно использовать простую формулу:
=—ЕСЛИ(ЯЧЕЙКА(«формат»;A1)=»G»; ПОДСТАВИТЬ(A1;».»;»,»); ТЕКСТ(A1;»М,ГГГГ»))
В английской версии это будет:
=—IF(CELL(«format«;A1)=»G»; SUBSTITUTE(A1;».»;»,»); TEXT(A1;»M,YYYY«))
Логика здесь простая:
- Функция ЯЧЕЙКА (CELL) определяет числовой формат исходной ячейки и выдаёт в качестве результата «G» для текста/чисел или «D3» для дат.
- Если в исходной ячейке текст, то выполняем замену точки на запятую с помощью функции ПОДСТАВИТЬ (SUBSTITUTE).
- Если в исходной ячейке дата, то выводим её в формате «номер месяца — запятая — номер года» с помощью функции ТЕКСТ (TEXT).
- Чтобы преобразовать получившееся текстовое значение в полноценное число — выполняем бессмысленную математическую операцию — добавляем два знака минус перед формулой, имитируя двойное умножение на -1.
Способ 3. Макросом
Если подобную процедуру лечения испорченных чисел приходится выполнять часто, то имеет смысл автоматизировать процесс макросом. Для этого жмём сочетание клавиш Alt+F11 или кнопку Visual Basic на вкладке Разработчик (Developer), вставляем в нашу книгу новый пустой модуль через меню Insert — Module и копируем туда такой код:
Sub Fix_Numbers_From_Dates() Dim num As Double, cell As Range For Each cell In Selection If Not IsEmpty(cell) Then If cell.NumberFormat = "General" Then num = CDbl(Replace(cell, ".", ",")) Else num = CDbl(Format(cell, "m,yyyy")) End If cell.Clear cell.Value = num End If Next cell End Sub
Останется выделить проблемные ячейки и запустить созданный макрос сочетанием клавиш Alt+F8 или через команду Макросы на вкладке Разработчик (Developer — Macros). Все испорченные числа будут немедленно исправлены.
Ссылки по теме
- Как Excel на самом деле работает с датами и временем
- Замена текста функцией ПОДСТАВИТЬ
- Функция ВПР и числа-как-текст