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

Лишние пробелы в ячейках Microsoft Excel — одна из самых распространённых проблем при работе с текстовыми данными. Они появляются при импорте данных из других источников, копировании с веб-сайтов или даже при ручном вводе. Эти "невидимые" символы мешают сортировке, фильтрации, сводным таблицам и даже могут искажать результаты формул. Например, функции ВПР или СЧЁТЕСЛИ не распознают ячейки с одинаковым текстом, если в одной из них есть лишние пробелы.

Многие пользователи пытаются удалить пробелы вручную, но это занимает часы при работе с большими таблицами. К счастью, в Excel есть несколько эффективных способов автоматизировать этот процесс — от простой функции СЖПРОБЕЛЫ до мощных инструментов вроде Power Query. В этой статье мы разберём все методы, включая нюансы, о которых не пишут в стандартных инструкциях.

Особенно актуальна проблема лишних пробелов для тех, кто работает с данными из , CRM-систем или веб-скрапинга. Например, при экспорте прайс-листов из 1С:Предприятие часто добавляются неразрывные пробелы (CHAR(160)), которые не удаляются стандартной функцией TRIM. Мы покажем, как справиться и с такими случаями.

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

1. Функция СЖПРОБЕЛЫ (TRIM) — базовый метод

Самый простой способ удалить лишние пробелы — использовать встроенную функцию СЖПРОБЕЛЫ (англ. TRIM). Она убирает все пробелы в начале и конце текста, а также сокращает несколько пробелов между словами до одного. Формула работает во всех версиях Excel, включая Excel 365, Excel 2019 и Excel Online.

Чтобы применить функцию:

  1. В пустой ячейке рядом с исходными данными введите формулу:
    =СЖПРОБЕЛЫ(A1)
  2. Нажмите Enter.
  3. Растяните формулу на весь столбец с помощью маркера автозаполнения (маленький квадратик в правом нижнем углу ячейки).

Если вам нужно заменить исходные данные очищенными, скопируйте столбец с формулой, затем выделите исходный столбец, кликните правой кнопкой и выберите Специальная вставка → Значения. После этого можно удалить вспомогательный столбец.

Ограничения функции СЖПРОБЕЛЫ:

  • 🚫 Не удаляет неразрывные пробелы (CHAR(160)), которые часто встречаются в данных из или Word.
  • 🚫 Не работает с пробелами внутри текста, если они являются частью форматирования (например, в адресах или ФИО).
  • 🚫 Не удаляет пробелы в ячейках с формулами (только в текстовых данных).
⚠️ Внимание: Если после применения СЖПРОБЕЛЫ пробелы остались, значит, в тексте используются нестандартные символы пробелов. Проверьте это с помощью функции =КОДСИМВ(СИМВОЛ(ПОИСК(" ";A1))) — она покажет код символа.

2. Удаление неразрывных пробелов (CHAR 160)

Неразрывные пробелы (CHAR(160)) — это особый тип пробелов, который не разрывает строку при переносе. Они часто встречаются в данных, экспортированных из , Word или PDF. Стандартная функция СЖПРОБЕЛЫ их не удаляет, поэтому требуется другой подход.

Чтобы заменить неразрывные пробелы на обычные и затем удалить их, используйте комбинацию функций ПОДСТАВИТЬ и СЖПРОБЕЛЫ:

=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(A1;СИМВОЛ(160);" "))

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

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

Для массовой обработки данных:

  1. Выделите столбец с данными.
  2. Нажмите Ctrl + H (замена).
  3. В поле Найти введите СИМВОЛ(160) (для этого сначала вставьте неразрывный пробел из Word или скопируйте отсюда:  ).
  4. В поле Заменить на оставьте пустым или введите обычный пробел.
  5. Нажмите Заменить все.
Как вставить неразрывный пробел в поле "Найти"

Нажмите Alt + 0160 на цифровой клавиатуре (Num Lock должен быть включён). Или скопируйте символ из этой статьи:   (между кавычками).

Тип пробела Код символа Как вставить в Excel Удаляется ли СЖПРОБЕЛЫ?
Обычный пробел 32 (CHAR(32)) Клавиша Space Да
Неразрывный пробел 160 (CHAR(160)) Alt + 0160 или копирование Нет
Табуляция 9 (CHAR(9)) Клавиша Tab Нет
Пробел нулевой ширины 8203 (CHAR(8203)) Копирование из специальных символов Нет

3. Использование функции ПОДСТАВИТЬ для точечной очистки

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

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

  • 📌 Удалить все пробелы:
    =ПОДСТАВИТЬ(A1;" "; "")
  • 📌 Заменить пробелы на запятые:
    =ПОДСТАВИТЬ(A1;" "; ",")
  • 📌 Удалить пробелы в начале и конце (альтернатива СЖПРОБЕЛЫ):
    =ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;" ";"");" ";" ")

    Здесь первая ПОДСТАВИТЬ удаляет все пробелы, а вторая добавляет по одному пробелу между словами.

Если в тексте есть несколько типов пробелов (например, обычные и неразрывные), комбинируйте ПОДСТАВИТЬ с СЖПРОБЕЛЫ:

=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;СИМВОЛ(160);" ");СИМВОЛ(9);" "))

Эта формула заменяет неразрывные пробелы и табуляции на обычные, а затем убирает лишние.

📊 Какой метод удаления пробелов вы используете чаще?
Функция СЖПРОБЕЛЫ
Замена (Ctrl+H)
Функция ПОДСТАВИТЬ
Power Query
Макросы VBA
Другой способ

4. Power Query — мощный инструмент для очистки данных

Power QueryExcel 2016 и новее) — это инструмент для преобразования данных, который позволяет удалять пробелы в больших таблицах без формул. Его преимущество в том, что все действия сохраняются и могут быть обновлены при изменении исходных данных.

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

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

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

  • 🔄 Обрабатывает миллионы строк без замедления.
  • 📊 Сохраняет историю преобразований — можно повторно применить к новым данным.
  • 🛠️ Умеет работать с неразрывными пробелами и другими непечатаемыми символами.
⚠️ Внимание: Если после загрузки данных из Power Query пробелы снова появляются, проверьте формат ячеек. Иногда Excel автоматически добавляет пробелы при преобразовании чисел в текст (например, в столбцах с индексами или кодами).

☑️ Подготовка данных перед очисткой в Power Query

Выполнено: 0 / 4

5. Макросы VBA для автоматизации

Если вам часто приходится очищать пробелы в больших файлах, стоит автоматизировать процесс с помощью VBA-макросов. Этот метод требует минимальных знаний программирования, но экономит часы времени.

Пример макроса для удаления всех пробелов в выделенном диапазоне:

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

Dim rng As Range

For Each rng In Selection

If rng.Value <> "" Then

rng.Value = Replace(rng.Value, " ", "")

End If

Next rng

End Sub

Для удаления только лишних пробелов (как СЖПРОБЕЛЫ), используйте:

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

Dim rng As Range

For Each rng In Selection

If rng.Value <> "" Then

rng.Value = WorksheetFunction.Trim(rng.Value)

End If

Next rng

End Sub

Как запустить макрос:

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

Расширенный макрос для удаления неразрывных пробелов и табуляций:

Sub ОчисткаПробеловFull()

Dim rng As Range

For Each rng In Selection

If rng.Value <> "" Then

rng.Value = WorksheetFunction.Trim(

Replace(

Replace(

Replace(rng.Value, Chr(160), " "),

Chr(9), " "),

" ", " "))

End If

Next rng

End Sub

6. Дополнительные инструменты: надстройки и онлайн-сервисы

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

Популярные надстройки для Excel:

  • 📦 Kutools for Excel — имеет функцию Remove Spaces, которая удаляет все типы пробелов (включая неразрывные и пробелы нулевой ширины).
  • 📦 Ablebits — предлагает инструмент Trim Spaces с гибкими настройками.
  • 📦 ASAP Utilities — бесплатная надстройка с функцией очистки текста.

Онлайн-сервисы для очистки текста:

  • 🌐 TextFixer — удаляет пробелы, переносы строк и другие непечатаемые символы.
  • 🌐 ConvertCSV — очищает текстовые данные перед импортом в Excel.

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

7. Частые ошибки и как их избежать

При удалении пробелов пользователи часто сталкиваются с неожиданными проблемами. Вот самые распространённые ошибки и их решения:

Проблема 1: После применения СЖПРОБЕЛЫ пробелы остаются.

  • 🔍 Причина: В тексте используются неразрывные пробелы (CHAR(160)) или другие непечатаемые символы.
  • 🛠️ Решение: Используйте комбинацию ПОДСТАВИТЬ + СЖПРОБЕЛЫ или Power Query.

Проблема 2: После очистки данные превратились в даты (например, 01.12 стало 1-дек).

  • 🔍 Причина: Excel автоматически преобразует текст в формат даты, если пробелы были частью разделителя.
  • 🛠️ Решение: Перед очисткой установите для столбца текстовый формат (Ctrl + 1 → Текстовый).

Проблема 3: Формулы перестали работать после удаления пробелов.

  • 🔍 Причина: Некоторые функции (например, ВПР) чувствительны к пробелам в критериях поиска.
  • 🛠️ Решение: Очищайте пробелы как в искомом значении, так и в диапазоне поиска.

Проблема 4: Макрос не работает с русскими буквами.

  • 🔍 Причина: В коде VBA не указаны правильные региональные настройки.
  • 🛠️ Решение: Добавьте в начало макроса строку
    Application.UseSystemSeparators = False
    или используйте функции без привязки к языку (например, Replace вместо WorkshetFunction.Substitute).

8. Как предотвратить появление лишних пробелов

Лучше предупредить проблему, чем бороться с её последствиями. Вот несколько советов, как избежать появления лишних пробелов в Excel:

При импорте данных:

  • 📥 Используйте Power Query вместо стандартного импорта — он позволяет очищать данные на этапе загрузки.
  • 📥 Настраивайте параметры текстового импорта: выбирайте разделители и формат данных вручную.

При ручном вводе:

  • ⌨️ Отключите автоматическое форматирование в Файл → Параметры → Правописание → Параметры автозамены.
  • ⌨️ Используйте Ctrl + ; для вставки текущей даты без пробелов.

При работе с формулами:

  • 📊 Всегда оборачивайте текстовые данные в СЖПРОБЕЛЫ, если они используются в сравнениях или поиске.
  • 📊 Для объединения текста используйте & вместо функции СЦЕПИТЬ (или ТЕКСТСЦЕП в новых версиях), чтобы контролировать пробелы.

При экспорте данных:

  • 📤 Сохраняйте файлы в формате .csv с разделителями-запятыми, а не пробелами.
  • 📤 Перед экспортом применяйте СЖПРОБЕЛЫ ко всем текстовым столбцам.

FAQ: Ответы на частые вопросы

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

Да, для этого используйте комбинацию функций ЛЕВСИМВ, ПРАВСИМВ и ПСТР:

=ПСТР(A1;НАЙТИ(ПОДСТАВИТЬ(A1;" ";"");"");ДЛСТР(A1)-ПОИСК(""&ПОДСТАВИТЬ(ОБРАТИТЬ(A1);" ";"");"*")+1)

Или проще — используйте Power Query с опцией Обрезка начала или Обрезка конца.

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

Это происходит из-за автоматического форматирования Excel. Например, текст "01.12" после удаления пробелов становится "01.12", что Excel интерпретирует как 1 декабря.

Решение: Перед очисткой установите для столбца текстовый формат (Ctrl + 1 → Текстовый).

Как удалить пробелы в защищённых ячейках?

Если ячейки защищены от изменений, вам нужно:

  1. Снять защиту листа: Рецензирование → Снять защиту листа (может потребоваться пароль).
  2. Применить очистку пробелов.
  3. Вернуть защиту: Рецензирование → Защитить лист.

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

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

Да, для этого подойдут:

  • 📁 Пакетная обработка в Power Query: Объедините несколько файлов в одну таблицу и очистите пробелы.
  • 📁 Макросы VBA: Напишите скрипт для обработки всех файлов в папке.
  • 📁 Сторонние утилиты: Например, ASAP Utilities или Kutools поддерживают пакетную обработку.
Как удалить пробелы в формулах (не в тексте)?

Пробелы внутри формул (например, =СУММ( A1 : B1 )) не влияют на результат, но могут мешать чтению. Чтобы их убрать:

  1. Нажмите Ctrl + H (замена).
  2. В поле Найти введите пробел, а в Заменить на оставьте пустым.
  3. Нажмите Параметры → В формулах (в новых версиях Excel).
  4. Запустите замену.

⚠️ Будьте осторожны: это удалит все пробелы в формулах, включая те, что используются как разделители аргументов (например, в =ЕСЛИ(A1>0; "Да"; "Нет")).