Как убрать пробелы в числах в Excel: от ручной правки до автоматических формул

Почему пробелы в числах — это проблема, и когда их обязательно убирать

Вы когда-нибудь сталкивались с ситуацией, когда Excel упорно не хочет считать ваши данные? Например, сумма не складывается, а формула выдаёт ошибку #ЗНАЧ! — хотя на вид всё правильно? В 90% случаев виноваты невидимые пробелы в числовых ячейках. Они могут появиться при импорте данных из других программ, копировании с веб-страниц или даже после ручного ввода, если случайно нажали клавишу Space.

Проблема в том, что Excel воспринимает "1 234" (с пробелом) и "1234" (без пробела) как разные значения. Первое он считает текстом, а второе — числом. Из-за этого:

  • 📉 Формулы не работаютСУММ игнорирует "текстовые" числа, а СЧЁТ их не учитывает.
  • 📊 Сортировка ломается — числа с пробелами оказываются в конце списка, как будто это строки.
  • 🔍 Фильтры не находят данные — поиск по "1000" не вернёт ячейку с "1000 " (с пробелом в конце).

Хуже всего, что пробелы бывают невидимыми — например, символы неразрывного пробела (CHAR(160)), которые ставятся в HTML-коде веб-страниц. Их не увидишь, пока не включишь Режим формул (Ctrl + ~) или не воспользуешься функцией КОДСИМВ.

Способ 1: Поиск и замена — самый быстрый метод для небольших таблиц

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

Инструкция:

  1. Выделите диапазон ячеек с данными (или всю таблицу — Ctrl + A).
  2. Нажмите Ctrl + H (или перейдите в Главная → Найти и выделить → Заменить).
  3. В поле Найти введите один пробел (нажмите клавишу Space).
  4. Поле Заменить на оставьте пустым.
  5. Нажмите Заменить всё.

⚠️ Внимание: Этот метод удалит все пробелы, включая те, что стоят между словами в текстовых ячейках. Если в вашей таблице есть адреса, ФИО или другие данные с пробелами, используйте другой способ (см. раздел про функцию ПЕЧСИМВ).

Выделили только числовые столбцы|Сделали резервную копию данных|Убедились, что в таблице нет текстовых данных с пробелами|Попробовали замену на тестовом диапазоне-->

Способ 2: Функция TRIM (ПЕЧСИМВ) — удаление лишних пробелов без потерь

Функция TRIM (в русской версии — ПЕЧСИМВ) специально создана для очистки текста от лишних пробелов. Она удаляет:

  • 🚫 Пробелы в начале строки (например, " 123""123").
  • 🚫 Пробелы в конце строки (например, "123 ""123").
  • 🚫 Множественные пробелы между словами (например, "123 456""123 456").

Синтаксис простой:

=ПЕЧСИМВ(A1)

Где A1 — ячейка с исходными данными.

Пример использования:

Исходные данные (столбец A)ФормулаРезультат (столбец B)
123 =ПЕЧСИМВ(A1)123
1 000=ПЕЧСИМВ(A2)1 000
456 789=ПЕЧСИМВ(A3)456 789
1000 =ПЕЧСИМВ(A4)1000

⚠️ Внимание: ПЕЧСИМВ не удаляет неразрывные пробелы (CHAR(160)). Если после применения функции пробелы остались, используйте комбинацию с ПОДСТАВИТЬ (см. следующий раздел).

Поиск и замена|Функция ПЕЧСИМВ|Формула с ПОДСТАВИТЬ|Макросы VBA|Не знаю, как удалять-->

Способ 3: ПОДСТАВИТЬ + ПЕЧСИМВ — комбо для неразрывных пробелов

Если стандартная замена и ПЕЧСИМВ не сработали, виноват неразрывный пробел — специальный символ (CHAR(160)), который часто встречается в данных, скопированных с веб-сайтов. Его не видно, но Excel воспринимает как часть текста.

Чтобы удалить такие пробелы, комбинируйте две функции:

=ПЕЧСИМВ(ПОДСТАВИТЬ(A1;СИМВОЛ(160);" "))

Разберём по шагам:

  1. СИМВОЛ(160) — возвращает неразрывный пробел.
  2. ПОДСТАВИТЬ — заменяет все CHAR(160) на обычные пробелы (" ").
  3. ПЕЧСИМВ — удаляет лишние пробелы в начале/конце и сокращает множественные пробелы до одного.

Если нужно удалить все пробелы (включая разделительные в числах типа "1 000"), используйте:

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;" ":"");СИМВОЛ(160);"")
=ЕСЛИ(НАЙТИ(СИМВОЛ(160);A1);"Есть!";"Нет")

Она вернёт "Есть!", если найдёт CHAR(160).-->

Способ 4: Power Query — очистка больших таблиц без формул

Если у вас тысячи строк, а формулы тормозят файл, используйте Power Query — встроенный инструмент Excel для обработки данных. Он позволяет удалить пробелы одним кликом, не нагружая файл.

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

  1. Выделите исходную таблицу и нажмите Данные → Из таблицы/диапазона (в Excel 2016+).
  2. В открывшемся окне Power Query выделите столбец с числами.
  3. Перейдите на вкладку Преобразование и выберите Формат → Обрезка (удалит пробелы в начале/конце).
  4. Для удаления всех пробелов выберите Заменить значения, в поле Значение для поиска введите пробел, а в Замена оставьте пустым.
  5. Нажмите Закрыть и загрузить — данные обновятся в новой таблице.

Преимущества метода:

  • Не нагружает файл — обработка происходит в фоновом режиме.
  • 🔄 Автоматизируется — при обновлении источника данные очистятся повторно.
  • 📊 Подходит для больших данных (100 000+ строк).
Что делать, если Power Query не виден в меню?

В Excel 2013 и старше Power Query устанавливается как надстройка. Скачайте её с сайта Microsoft или активируйте:

Файл → Параметры → Надстройки → Управление: Надстройки COM → Перейти → Поставьте галочку напротив "Power Query" → OK.

Способ 5: Макрос VBA — автоматическая очистка для продвинутых

Если вам приходится очищать пробелы регулярно, напишите простой макрос. Он удалит все пробелы (включая неразрывные) в выбранных ячейках за доли секунды.

Код макроса:

Sub УдалитьПробелы()

Dim rng As Range

Dim cell As Range

' Выделяем диапазон (или используем выделенный пользователем)

Set rng = Selection

' Отключаем обновление экрана для ускорения

Application.ScreenUpdating = False

For Each cell In rng

' Заменяем обычные и неразрывные пробелы

cell.Value = Replace(Replace(cell.Value, " ", ""), Chr(160), "")

Next cell

Application.ScreenUpdating = True

MsgBox "Пробелы удалены из " & rng.Cells.Count & " ячеек!", vbInformation

End Sub

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

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

⚠️ Внимание: Макрос безвозвратно изменяет данные в ячейках. Перед запуском:

  • 💾 Сделайте резервную копию файла.
  • 🔍 Проверьте макрос на тестовом диапазоне.
  • 🚫 Не применяйте к ячейкам с формулами (они превратятся в значения!).

Как предотвратить появление пробелов в будущем

Лучше не удалять пробелы постфактум, а не допускать их появления. Вот 5 правил для чистых данных:

  1. Импортируйте данные правильно:
    • 📄 При импорте из CSV/ТXT выбирайте Разделители → Пробел (если пробелы — разделители столбцов).
    • 🌐 При копировании с веб-сайтов используйте Вставить → Специальная вставка → Текст.
  • Настраивайте формат ячеек заранее:
    • 📊 Для числовых данных устанавливайте формат Числовой или Денежный до ввода.
    • 🚫 Избегайте формата Текстовый для чисел — он сохраняет пробелы.
    • Используйте проверку данных:
      Данные → Проверка данных → Тип: Целое число (или Дробное)

      Это заблокирует ввод текста с пробелами.

    Если вы часто работаете с "грязными" данными (например, выгружаете отчёты из 1С или CRM), создайте шаблон очистки:

    • 📑 Сохраните файл с макросами удаления пробелов.
    • 🔄 Используйте Power Query для автоматической обработки новых данных.
    • 📌 Добавляйте столбец с формулой =ЕЧИСЛО(ЗНАЧЕН(A1)), чтобы отслеживать "битые" ячейки.

    FAQ: Частые вопросы о пробелах в числах Excel

    ❓ Почему после удаления пробелов числа всё равно не суммируются?

    Вероятно, в ячейках остались непечатаемые символы (например, табуляция или перевод строки). Проверьте с помощью функции =КОДСИМВ(ЛЕВСИМВ(A1)) — она покажет код первого символа. Если это не цифра (коды 48–57), используйте ПОДСТАВИТЬ для удаления лишних символов.

    ❓ Как удалить пробелы только в числовых ячейках, не трогая текст?

    Используйте формулу с проверкой:

    =ЕСЛИ(ЕТЕКСТ(A1);A1;ПОДСТАВИТЬ(A1;" ":""))

    Она заменит пробелы только в ячейках, которые Excel распознаёт как числа (или даты).

    ❓ Можно ли удалить пробелы при экспорте данных из Excel?

    Да. При сохранении в CSV или TXT выберите Другие форматы → Разделитель: Табуляция и отметьте Сохранять только активные листы. Пробелы как разделители используются редко, поэтому они будут удалены автоматически.

    ❓ Почему функция ПЕЧСИМВ не работает с датами?

    Excel хранит даты как числа (количество дней с 1900 года). Если ваша "дата" выглядит как текст (например, "01.01.2023 "), сначала преобразуйте её в настоящую дату с помощью =ДАТАЗНАЧ(ПЕЧСИМВ(A1)).

    ❓ Как найти ячейки с пробелами в больших таблицах?

    Используйте условное форматирование:

    1. Выделите диапазон.
    2. Перейдите в Главная → Условное форматирование → Создать правило.
    3. Выберите Использовать формулу и введите:
    4. =ИЛИ(НАЙТИ(" ";A1);НАЙТИ(СИМВОЛ(160);A1))
    5. Задайте формат (например, красный фон) и нажмите OK.

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