Как убрать числовой формат в Excel: от простого к сложному

Проблема с числами в Excel: когда формат мешает работе

Вы когда-нибудь сталкивались с ситуацией, когда Excel упрямо воспринимает ваши данные как числа, хотя вам нужны текстовые значения? Например, при вводе артикулов 0012345 программа автоматически обрезает ведущие нули, превращая их в 12345. Или когда даты в формате 01.01.2026 внезапно становятся 45301 — внутренним числовым представлением Excel.

Эта проблема особенно актуальна при работе с:

  • 📦 Артикулами товаров (где важны ведущие нули)
  • 📅 Датами в нестандартных форматах (например, Янв-24)
  • 🔢 Телефонными номерами (где формат +7(999)123-45-67 разрушается)
  • 💳 Номерами документов (серии паспортов, ИНН с ведущими нулями)

В этой статье мы разберём 5 рабочих способов убрать числовой формат — от элементарных до продвинутых (включая VBA), а также проанализируем типичные ошибки и их решения. Особое внимание уделим скрытым ловушкам Excel, из-за которых формат может "возвращаться" после сохранения файла.

Способ 1: Ручное изменение формата ячеек

Самый очевидный метод — изменить формат ячейки через меню. Это работает в 90% случаев, но только если данные ещё не были преобразованы Excel автоматически.

Инструкция:

  1. Выделите проблемные ячейки (или столбец целиком, нажав на его букву).
  2. Нажмите правой кнопкой мыши и выберите Формат ячеек... (или используйте горячие клавиши Ctrl+1).
  3. В открывшемся окне перейдите на вкладку Число.
  4. Выберите категорию Текстовый и нажмите OK.

⚠️ Внимание: Если вы примените текстовый формат после ввода чисел, Excel не вернёт ведущие нули — их придётся вводить заново! Чтобы избежать этого, устанавливайте текстовый формат до ввода данных.

Выделить столбец|Установить текстовый формат (Ctrl+1 → Текстовый)|Ввести данные заново, если нули уже обрезались|Проверить отображение (ведущие нули должны сохраниться)-->

Для ускорения процесса можно использовать панель инструментов:

На вкладке Главная в группе Число выберите из выпадающего списка формат Текстовый (обозначен буквой Абв).

Способ 2: Преобразование через апостроф

Малоизвестный лайфхак: если перед вводом числа поставить апостроф ('), Excel воспримет его как текст, даже если ячейка имеет числовой формат. Этот метод идеален для разовых вводов.

Примеры:

Что ввели Как Excel отобразит Реальное значение (в строке формул)
'0012345 0012345 '0012345
'+7(999)123-45-67 +7(999)123-45-67 '+7(999)123-45-67
'12.12.2026 12.12.2026 '12.12.2026

⚠️ Внимание: Апостроф не виден в самой ячейке, но отображается в строке формул. Если вам нужно экспортировать данные без апострофа (например, в CSV), используйте функцию =ПОДСТАВИТЬ(A1;"'";"").

1. Выделите столбец

2. Нажмите Ctrl+H (Заменить)

3. В поле "Найти" оставьте пустым, в "Заменить на" введите '

4. Нажмите "Заменить всё"-->

Способ 3: Использование функций для принудительного преобразования

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

  • 🔹 =ТЕКСТ(A1;"0") — преобразует число в текст с сохранением всех знаков (включая ведущие нули, если они были в исходных данных).
  • 🔹 =СЦЕПИТЬ("";A1) — принудительно делает значение текстовым (аналог =A1&"").
  • 🔹 =ФИКСИРОВАННЫЙ(A1;0;ИСТИНА) — убирает научную нотацию (например, 1.23E+10 станет 12345678901).

Пример применения:

Если в ячейке A1 хранится число 123, но вам нужно, чтобы оно отображалось как 00123, используйте:

=ТЕКСТ(A1;"00000")

Эта формула добавит ведущие нули до 5 знаков.

Почему функция ТЕКСТ не всегда работает с датами?

Функция =ТЕКСТ(A1;"дд.мм.гггг") преобразует внутреннее числовое представление даты в текстовый формат. Однако если в ячейке A1 уже хранится текст (например, введённый через апостроф), Excel вернёт ошибку. В этом случае используйте =ЕСЛИОШИБКА(ТЕКСТ(A1;"дд.мм.гггг");A1)

Способ 4: Массовое преобразование через "Текст по столбцам"

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

Пошаговая инструкция:

  1. Выделите столбец с данными.
  2. Перейдите на вкладку ДанныеТекст по столбцам.
  3. В первом окне выберите С разделителямиДалее.
  4. Снимите все галочки в разделе Разделители (должно быть пусто) → Далее.
  5. На последнем шаге в разделе Формат данных столбца выберите Текстовый.
  6. Укажите целевую ячейку (можно ту же самую) и нажмите Готово.

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

Ручное форматирование (Ctrl+1)|Функции (ТЕКСТ, СЦЕПИТЬ)|Текст по столбцам|VBA-скрипты|Другой способ-->

Способ 5: Автоматизация через VBA (для продвинутых пользователей)

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

Sub ConvertToText()

Dim rng As Range

Dim cell As Range

On Error Resume Next

Set rng = Selection.SpecialCells(xlCellTypeConstants)

On Error GoTo 0

If Not rng Is Nothing Then

Application.ScreenUpdating = False

For Each cell In rng

If IsNumeric(cell.Value) Then

cell.NumberFormat = "@"

cell.Value = "'" & cell.Value

End If

Next cell

Application.ScreenUpdating = True

End If

End Sub

Как использовать:

  1. Нажмите Alt+F11, чтобы открыть редактор VBA.
  2. Вставьте код в новый модуль (Insert → Module).
  3. Выделите ячейки, которые нужно преобразовать.
  4. Запустите макрос через F5 или назначьте его на кнопку.

⚠️ Внимание: Макрос добавляет апостроф перед каждым значением. Если вам нужно убрать апострофы после преобразования, используйте замену (Ctrl+H): найдите ', замените на пустоту.

Типичные ошибки и их решения

Даже после преобразования формата пользователи часто сталкиваются с неожиданными проблемами. Разберём самые распространённые:

Ошибка Причина Решение
#ЗНАЧ! при использовании ВПР или ИНДЕКС Функции не работают с текстовыми значениями, если искомое значение числовое Преобразуйте оба диапазона в один формат (например, =ВПР(ТЕКСТ(A1;"0");...))
Даты отображаются как числа (например, 45301) Excel хранит даты как количество дней с 1900 года Используйте =ТЕКСТ(A1;"дд.мм.гггг") или измените формат ячейки на Дата
Ведущие нули пропадают после сохранения в CSV CSV не сохраняет форматирование Перед экспортом добавьте апостроф или используйте формулу =СЦЕПИТЬ("""";A1;""""") для обёртки в кавычки

Особая проблема — автоматическое преобразование при импорте данных. Например, при открытии CSV-файла Excel может сам присвоить числовой формат столбцам с артикулами. Чтобы этого избежать:

  1. Импортируйте данные через Данные → Из текста.
  2. На шаге выбора формата столбца явным образом укажите Текстовый.

FAQ: Частые вопросы по удалению числового формата

Почему после преобразования в текст формулы перестают работать?

Excel не может автоматически сравнивать текстовые и числовые значения. Например, =ЕСЛИ(A1=123;"Да";"Нет") вернёт Нет, если A1 содержит текст "123". Решение: используйте =ЕСЛИ(ЗНАЧЕН(A1)=123;"Да";"Нет") для принудительного преобразования текста в число.

Как убрать научную нотацию (например, 1.23E+10)?

Научная нотация появляется, когда число слишком большое или слишком маленькое. Чтобы убрать её:

  1. Установите для ячейки формат Числовой с 0 десятичных знаков.
  2. Или используйте формулу =ФИКСИРОВАННЫЙ(A1;0;ИСТИНА).

Если нужно сохранить число как текст, используйте =ТЕКСТ(A1;"0").

Можно ли отменить автоматическое преобразование чисел при вводе?

Да, но только для конкретных ячеек. Перед вводом данных:

  1. Выделите ячейки.
  2. Установите формат Текстовый (Ctrl+1).
  3. Вводите данные — Excel не будет их преобразовывать.

Для всего файла это сделать нельзя, но можно отключить некоторые автоматические исправления в Файл → Параметры → Правописание → Параметры автозамены → Автоформат при вводе (снимите галочку с Числа с ведущими нулями).

Почему после копирования из Excel в Word числа отображаются неправильно?

При копировании Excel может передавать не отображаемое значение, а реальное (например, вместо 01.01.2026 передаст 45301). Решения:

  • 📋 Копируйте через Специальная вставка → Текст.
  • 📋 Преобразуйте данные в текст в Excel перед копированием.
  • 📋 Вставляйте в Word через Сохранить как → Текстовый файл.
Как массово убрать апострофы из ячеек после преобразования?

Используйте функцию ПОДСТАВИТЬ:

  1. В соседнем столбце введите =ПОДСТАВИТЬ(A1;"'";"").
  2. Протяните формулу на все строки.
  3. Скопируйте результаты и вставьте их поверх оригинальных данных через Специальная вставка → Значения.

Для VBA используйте этот код:

Sub RemoveApostrophes()

Dim rng As Range

For Each rng In Selection

If Left(rng.Value, 1) = "'" Then

rng.Value = Mid(rng.Value, 2)

End If

Next rng

End Sub