Excel меняет цифры на дату как исправить

Excel для Microsoft 365 Excel для Интернета Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Еще…Меньше

Microsoft Excel предварительно программируется, чтобы упростить ввод дат. Например, 12/2 изменяется на 2-дек. Это очень неприятно, если вы вводите что-то, что не хотите менять на дату. К сожалению, отключить эту возможность не получится. Однако существует несколько способов обойти это.

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

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

  • Пробел перед вводом числа. После нажатия ввод пробел останется в ячейке. (См. заметки)

  • Апостроф (‘) перед вводом числа, например ’11-53 или ‘1/47. Апостроф не отображается в ячейке после нажатия ввода.

  • Нуль и пробел перед вводом дроби, например 1/2 или 3/4, чтобы они не менялись, например, на 2-янв или 4-мар. Введите 0 0 1/2 или 0 3/4. Ноль не остается в ячейке после нажатия ввод, и ячейка становится типом дробного числа.

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

  2. Нажмите клавиши CTRL+1 (1 в строке чисел над клавишами QWERTY), чтобы открыть формат ячеек.

  3. Выберите тексти нажмите кнопку ОК.

  1. Выберите ячейки, в которые необходимо ввести числа.

  2. Щелкните Главная > Числовой формат > Текст.

Примечания: 

  • Рекомендуется использовать апостроф вместо пробела для ввода данных, если вы планируете использовать функции подменю для данных. Такие функции, как ПОИСКПОЗ и ВПР, не учитывают апострофы при вычислении результатов.

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

  • При введении в ячейку числа с буквой «е», например 1e9, оно автоматически преобразуется в научное число: 1,00E+09. Чтобы избежать этого, введите перед числом апостроф: ‘1e9

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

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

Вы всегда можете задать вопрос специалисту 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):

Настройка разделителей в окне параметров Excel

Снимаем флажок Использовать системные разделители (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 на самом деле работает с датами и временем
  • Замена текста функцией ПОДСТАВИТЬ
  • Функция ВПР и числа-как-текст

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

  • Возвращаем отображение чисел вместо дат

    • Метод 1: используем контекстное меню

    • Метод 2: пользуемся инструментами на ленте

    • Метод 3: жмем горячие клавиши

  • Заключение

Возвращаем отображение чисел вместо дат

На самом деле все достаточно просто – вместо числа в ячейке появляется дата по причине того, что для нее задан такой формат (“Дата”). Следовательно, чтобы мы видели именно числовое значение, требуется всего лишь сменить формат на тот, который нам нужен. Справиться с этим можно по-разному.

Данное меню пользуется наибольшей популярностью среди пользователей Excel для решения множества задач. В нашем случае нам оно тоже может помочь.

  1. Правой кнопкой мыши кликаем по отдельной ячейке или заранее выделенному диапазону ячеек (например, с помощью зажатой левой кнопки мыши). В появившемся меню выбираем команду “Формат ячеек”.Переход в окно форматирования ячейки через контекстное меню в Эксель
  2. Мы должны оказаться в окне форматирования во вкладке “Число”. В поле “Числовые форматы” меняем формат “Дата” на “Числовой” (в некоторых случаях, если требуется, можно выбрать “Общий”, “Денежный” или “Текстовый”). Обращаем вниманием на область по надписью “Образец” – именно так будет отображаться содержимое ячейки после применения настроек. По готовности нажимаем OK.Форматирование ячеек в ЭксельПримечание: некоторые выбранные форматы можно настраивать, например, для числового можно задать количество десятичных знаков, а также включить/отключить разделитель групп разрядов.
  3. Таким образом, нам удалось получить в выбранной ячейке (диапазоне ячеек) конкретное число вместо даты.Числовой формат ячейки в Эксель

Метод 2: пользуемся инструментами на ленте

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

  1. Встаем в нужную ячейку или выделяем требуемый диапазон элементов.
  2. Переключаемся во вкладку “Главная”, если находимся в другой, после чего в группе инструментов “Число” щелкаем по стрелке вниз рядом с текущим форматом (в нашем случае – это “Дата”).Смена формата ячеек через инструменты на ленте программы Excel
  3. В раскрывшемся списке выбираем формат, который нам нужен (например, “Числовой”).Выбор формата ячеек в Эксель на ленте программы
  4. Получаем числовые значения вместо дат. Но здесь есть важный нюанс – в отличие от первого метода, возможности детально настроить выбранные форматы у нас нет.Ячейки с числовым форматом в ExcelПримечание: Если щелкнуть по пункту “Другие числовые форматы” в конце списка, то откроется окно форматирования, с которым мы уже познакомились ранее.Переход в окно форматирования ячеек через инструменты на ленте Excel

Метод 3: жмем горячие клавиши

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

Все, что нам нужно сделать – выбрать ячейку (или выделить диапазон), после чего нажать на клавиатуре сочетание Ctrl+1, после чего откроется уже знакомое окно форматирования.

Горячие клавиши для перехода в окно форматирования ячеек в Эксель

Заключение

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

На чтение 6 мин. Просмотров 2.4k. Опубликовано 11.08.2021

Как-то попалась на глаза новость: Учёные переименовали 27 человеческих генов из-за Excel. Программа принимала их названия за даты. Кто в танке не в курсе, то при написании похожих на даты в разной записи чисел или текста, Excel в одностороннем порядке пытается превратить их в дату. Одна из самых известных и за столько лет непоправленных недоразумений в Excel. Недавно я опубликовал свой скрипт Excel-CSVD для решения этой проблемы, но хотелось бы собрать в одном месте все известные мне способы для отмены автоматической конвертации чисел в даты.

excel_is_this_a_date_funny_pic
Перевод: Любой вид данных в Excel: Это дата?

Все способы можно поделить на 3 типа:

  • правка непосредственно в открытой программе Excel
  • чтение файлов csv или txt без возможности записи значений в файл
  • чтение файлов csv или txt при возможности записи значений в файл

Почему мы рассматриваем только формата csv/txt, ведь большинство работают в xls/xlsx форматах? В родных форматах Excel сохраняются свойства ячеек, столбцов, строк. Поэтому единожды задав правильно тип ячейки, можно уже не беспокоится, что при открытии неправильно что-то отобразится.

Содержание

  1. При работе в открытом Excel
  2. Изменение формата ячейки
  3. Вставка символа апострофа перед любым текстом
  4. Вставка формулы с текстом
  5. Чтение файлов csv или txt без возможности записи значений в файл
  6. Использование скрипта Excel-CSVD
  7. Использование импорта данных на вкладке Данные
  8. Чтение файлов csv или txt при возможности записи значений в файл
  9. Использование формул при записи csv/txt файла
  10. Использование скрытых символов при записи csv/txt файла

При работе в открытом Excel

Если в любой ячейке написать, например, 1/4, то это превратится в 04-янв. Для изменения поведения Excel есть такие способы

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

Изменение формата ячейки

Так как у ячейки по умолчанию всегда стоит формат Глобальный, то Excel пробует угадать за пользователя, что он хочет вбить: текст, число, формулу или дату. Ну не всегда это у него получается. Для того, чтобы отключить эту автоматическую конвертацию, нужно сделать ячейку/столбец/строку текстом. Более подробно на видео (ссылка).

Вставка символа апострофа перед любым текстом

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

set text with apostrophe in excel

Вставка формулы с текстом

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

set text with formula in excel

Чтение файлов csv или txt без возможности записи значений в файл

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

Использование скрипта Excel-CSVD

Суть скрипта Excel-CSVD в том, что он открывает файл полностью, как текст. Поэтому он всегда отобразит все данные, как есть. Причем действий со стороны пользователя будет минимально.

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

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

Использование импорта данных на вкладке Данные

Любой файл csv/txt можно импортировать на текущий лист с помощью кнопки на вкладке Данные — Импорт из текста. При импорте пользователь сам выбирает, как разделять данные (по разделителю или по количеству символов фиксировано). Дальше пользователю надо каждую колонку, где Excel может изменить данные на дату, сделать в формате Текст. По ссылке более подробно рассказано про импорт.

Плюс способа в том, что при импорте можно выбрать только необходимые колонки (а не все подряд) как Текст. При этом в остальных колонках сортировка останется нормальной.

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

panel with import csv in excel

Чтение файлов csv или txt при возможности записи значений в файл

Если возможно влиять на запись значений в файле csv или txt, то можно использовать следующие способы.

Использование формул при записи csv/txt файла

Определенные данные, которые могут вызвать проблемы с отображением, можно записать виде формулы

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

save as formula in csv

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

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

Использование скрытых символов при записи csv/txt файла

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

set text with hide symbols in csv

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

how excel shows hide symbols

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

К минусам данного способа относится тот факт, что пользователь не сможет проверять текст на равенства или использовать нормально формулы, так как символ будет в тексте, и с ним надо что-то делать. Например, пробелы спереди можно убирать функцией СЖПРОБЕЛЫ, а табуляцию с помощью ПЕЧСИМВ.

Я рассмотрел несколько способов, как можно открывать файлы и отключить конвертацию значений в даты. В большинстве случаев они базируются на превращении данных в текст. На мой взгляд, без лишней скромности, самый простой способ это юзать мой бесплатный скрипт Excel-CSVD. Все остальные способы требуют от пользователя каких-то лишних действий. Скрипт Excel-CSVD можно привязать к исполнению файлов csv, и открывать из меню Открыть с помощью. Но тут у каждого свой подход и свои заморочки.

Всем удачной работы в Excel…

Почему в Экселе вместо цифр появляется дата?

Почему в Экселе вместо цифр появляется дата?

Формат ячейки неправильный.

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

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

автор вопроса выбрал этот ответ лучшим

m3ser­gey
[116K]

3 года назад 

Более того, бывает так, что дата появляется даже там, где стоит какой-то числовой код, который предполагается воспринимать просто как текст. И это связано с настройкой формата ячейки. По умолчанию в Экселе выбран «Общий» формат ячейки, что означает как раз, что Эксель сам должен пытаться распознать, какие данные в нем есть, и преобразовывать их в удобный для пользователя формат. Обычно путаница возникает как раз с датой. Хотя возможны и другие неловкости — например, Эксель может округлить число там, где ничего подобного делать не нужно, отобразить ноль там, где стоит, например, 0,01.

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

Альфи­я1961
[124K]

6 лет назад 

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

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

Если формат стоит правильно, но это не помогает, то в этом случае можно попробовать поменять формат даты или чисел в настройках ОС (Меню «Панель управления» — «Язык и региональные стандарты»). Например сделать дату не через точку, а через слэш. Или разделитель в числах изменить с точки на запятую.

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

Ксарф­акс
[156K]

6 лет назад 

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

Поэтому нужно в контекстном меню ячейки выбрать «Формат ячеек» и указать «Числовой».

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

Андре­й2103­1981
[39K]

6 лет назад 

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

AlexS­EO
[85.9K]

3 года назад 

Вариантов тут несколько:

  • ячейке присвоен формат соответствующий, он так и называется «дата». задайте иной формат, предпочтительнее «общий», таким образом:;

- List item

  • если написать в ячейке 1.02, то после нажатия «ввод» в ней появится 01.фев, потому и нужно вводить число правильно, а именно 1,02.

Lada2­2
[12.6K]

6 лет назад 

Вам надо поменять формат ячейки в Excel. Там, где у Вас появилась дата, надо щелкнуть мышкой (выделить ячейку) и установить числовой формат вместо даты.

Нэпэй­шни
[18.2K]

3 года назад 

Для того чтобы в excel число не подменялось датой , например вместо 1.02 в 1 февраля, вас нужно ввести число корректно , вместо точки применять при вводе цифр запятую. Ещё проблема бывает из за формата данных .Тогда выделяет мышкой ячейку, жмём правую кнопку , далее формат ячейки, на вкладке число выбираем общий формат.

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

Но, а чтобы его поменять, нужно нажать на ячейку правой кнопкой мыши и выбрать «Формат ячейки». Или же найти его в меню «Главная » — «Числа».

владс­андро­вич
[766K]

3 года назад 

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

Знаете ответ?

Понравилась статья? Поделить с друзьями:
  • Как составить экологический отчет
  • Книги как найти сотрудника
  • Как найти свои крни
  • Как найти загадки про животных
  • Как найти площадь меньшего круга в большом