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

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

Вы скачали отчёт из 1С, получили таблицу от коллеги или импортировали данные из CRM — и вдруг обнаружили, что числа выглядят как 1 000 500 вместо 1000500. Проблема? Ещё какая! Excel воспринимает такие значения как текст, а не как числа. Это ломает формулы, сортировку и даже сводные таблицы. В худшем случае вы получите ошибку #ЗНАЧ! при попытке сложить "числа" с пробелами.

В этой статье разберём 7 способов убрать пробелы между цифрами — от элементарных (подойдут новичку) до продвинутых (для обработки тысяч строк за секунды). А ещё выясним, почему пробелы вообще появляются и как предотвратить их возникновение в будущем. Спойлер: виноваты не только пользователи, но и настройки Excel по умолчанию.

Прежде чем приступать к чистке данных, проверьте два момента: 1. Убедитесь, что пробелы действительно между цифрами, а не являются разделителями тысяч (например, в формате 1 000 000 для удобства чтения). 2. Если данные импортированы из внешнего источника (сайта, PDF, базы), возможно, пробелы — это неразрывные (специальный символ), и стандартная замена не сработает.

📊 Как часто вы сталкиваетесь с пробелами в числовых данных?
Постоянно (ежедневно)
Иногда (раз в неделю)
Редко (раз в месяц)
Никогда не замечал проблемы

Способ 1: Ручная замена через "Найти и заменить" (для небольших таблиц)

Самый простой метод, который не требует знания формул. Подходит, если пробелов мало и они обычные (не неразрывные). Как это работает:

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

⚠️ Внимание: Этот способ удалит все пробелы в выбранных ячейках, включая те, что стоят между словами (например, в ячейке Итого 1 000 руб. получится Итого1000руб.). Если в ваших данных смешаны числа и текст, используйте более точные методы (см. ниже).

Выделил только числовые столбцы

Проверял наличие неразрывных пробелов (Alt+0160)

Создал резервную копию данных

Убедился, что в ячейках нет полезных пробелов между словами-->

Способ 2: Функция ПОДСТАВИТЬ (для точечной очистки)

Если ручная замена слишком рискованна, используйте функцию =ПОДСТАВИТЬ(). Она позволяет заменить пробелы только в тех ячейках, где они мешают, не затрагивая остальной текст. Формула:

=ПОДСТАВИТЬ(A1; " "; "")

Где: A1 — ячейка с исходными данными, " " — пробел (то, что ищем), "" — пустая строка (на что заменяем).

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

  • 🔹 Работает даже с неразрывными пробелами (если указать их код CHAR(160) вместо " ").
  • 🔹 Не портит текстовые данные в тех же ячейках.
  • 🔹 Можно комбинировать с другими функциями (например, =ЗНАЧЕН(ПОДСТАВИТЬ(A1; " "; "")), чтобы сразу преобразовать текст в число).

Как вставить неразрывный пробел в формулу?

Используйте функцию CHAR(160). Например:

=ПОДСТАВИТЬ(A1; CHAR(160); "")

Это удалит неразрывные пробелы, которые часто встречаются в данных, скопированных с веб-страниц.

Способ 3: Преобразование текста в числа с удалением пробелов

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

Метод Как применить Когда использовать
ЗНАЧЕН()
=ЗНАЧЕН(ПОДСТАВИТЬ(A1; " "; ""))
Для формул, когда нужно сразу получить число
Текст по столбцам Данные → Текст по столбцам → Готово (на 3-м шаге выберите формат "Общий") Для больших диапазонов (тысячи строк)
Умножение на 1 Введите 1 в пустой ячейке, скопируйте её, выделите диапазон с числами → ПКМ → Специальная вставка → Умножить Для быстрого исправления без формул

⚠️ Внимание: Если после преобразования числа отображаются как 1.00E+06 (научный формат), измените формат ячейки на Числовой через контекстное меню (ПКМ → Формат ячеек).

Способ 4: Power Query для массовой обработки (Excel 2016+)

Если у вас Excel 2016 или новее, инструмент Power Query (вкладка Данные → Получить данные) справится с пробелами в тысячах строк за секунды. Алгоритм:

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

Преимущества Power Query:

  • 🔹 Обрабатывает миллионы строк без тормозов.
  • 🔹 Сохраняет историю преобразований — можно обновить данные одним кликом.
  • 🔹 Поддерживает неразрывные пробелы и другие непечатаемые символы.

Минус: если вы никогда не пользовались Power Query, придётся потратить 10 минут на изучение интерфейса. Но результат того стоит!

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

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

Sub УдалитьПробелыМеждуЦифрами()

Dim rng As Range

Dim cell As Range

Set rng = Selection

For Each cell In rng

If IsNumeric(Replace(Replace(cell.Value, " ", ""), Chr(160), "")) Then

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

End If

Next cell

End Sub

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

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

⚠️ Внимание: Макрос удаляет пробелы только в тех ячейках, где после их удаления остаётся число. Это защищает текстовые данные от случайного повреждения. Если нужно очистить все пробелы без проверки, замените строку If IsNumeric... на простой цикл cell.Value = Replace(...).

Способ 6: Формула массива для сложных случаев

Если пробелы между цифрами комбинируются с другими символами (точки, запятые, тире), поможет формула массива:

=СЦЕПИТЬ(ЕСЛИОШИБКА(--ПСТР(A1; СТРОКА(D1:D10); 1); ""))

Введите её как формулу массива: после ввода нажмите Ctrl + Shift + Enter (в новых версиях Excel просто Enter). Формула работает так:

  1. Разбивает текст в ячейке A1 на отдельные символы.
  2. Пробует преобразовать каждый символ в число (--).
  3. Если получается (т.е. символ — цифра), добавляет его к результату.
  4. Если нет (пробел, буква, знак), игнорирует.

Пример: из ячейки А123 Б45 6!7 формула вернёт 1234567. Этот метод универсален, но ресурсоёмок — не используйте его для столбцов с десятками тысяч строк.

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

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

  • 📌 Отключите автоматическое форматирование чисел.

    Перейдите в Файл → Параметры → Дополнительно и снимите галочку Автоматически добавлять разделитель групп разрядов.

  • 📌 Используйте формат "Текст" для импорта.

    При импорте данных из внешних источников выбирайте формат Текст для столбцов с числами, а потом преобразуйте их через ЗНАЧЕН().

  • 📌 Настройте региональные параметры.

    В Панель управления Windows → Регион → Дополнительные параметры проверьте, что в качестве Разделителя групп разрядов стоит не пробел, а запятая или точка.

  • 📌 Создайте шаблон с правильными форматами.

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

⚠️ Внимание: Если вы работаете с данными из , SAP или других бухгалтерских систем, пробелы как разделители тысяч могут быть "вшиты" в экспорт. В этом случае настройте правила экспорта в самой программе-источнике, а не бороться с последствиями в Excel.

FAQ: Частые вопросы о пробелах между цифрами

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

Это значит, что столбец слишком узкий для отображения числа. Растяните его вручную или используйте автоподбор ширины (Главная → Формат → Автоподбор ширины столбца). Также проверьте, не установлен ли в ячейке текстовый формат — измените его на Общий или Числовой.

Можно ли удалить пробелы только между цифрами, но оставить их в тексте?

Да, для этого подойдёт формула с проверкой символов:

=СЦЕПИТЬ(ЕСЛИ(И(КОДСИМВ(ПСТР(A1;СТРОКА(D1:D20);1))>=48; КОДСИМВ(ПСТР(A1;СТРОКА(D1:D20);1))<=57); ПСТР(A1;СТРОКА(D1:D20);1); ЕСЛИ(ПСТР(A1;СТРОКА(D1:D20);1)=" "; ""; ПСТР(A1;СТРОКА(D1:D20);1))))

Введите её как формулу массива (Ctrl+Shift+Enter). Она удаляет пробелы только между цифрами (коды 48–57 в таблице ASCII).

Почему функция ПОДСТАВИТЬ не удаляет пробелы в некоторых ячейках?

Скорее всего, в этих ячейках неразрывные пробелы (код CHAR(160)). Замените в формуле обычный пробел на CHAR(160):

=ПОДСТАВИТЬ(A1; CHAR(160); "")

Или удалите оба типа пробелов:

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1; " "; ""); CHAR(160); "")
Как удалить пробелы в Google Таблицах?

В Google Sheets используйте ту же функцию =SUBSTITUTE() (аналог ПОДСТАВИТЬ), но с английской нотацией:

=SUBSTITUTE(A1; " "; "")

Для преобразования текста в число добавьте =VALUE():

=VALUE(SUBSTITUTE(A1; " "; ""))

Можно ли вернуть пробелы обратно, если они были нужны для форматирования?

Да, используйте функцию =ФОРМАТ() или настройте условное форматирование для добавления разделителей тысяч без изменения самих данных. Пример:

=ФОРМАТ(ЗНАЧЕН(ПОДСТАВИТЬ(A1; " "; "")); "# ##0")

Эта формула удалит пробелы, преобразует текст в число и вернёт разделители в нужных местах.