Как убрать пробел в ячейке Excel: все методы от простого к сложному

Лишние пробелы в ячейках Excel — одна из самых распространённых проблем при работе с текстовыми данными. Они появляются при импорте из других систем, копировании с веб-страниц или даже после ручного ввода. Эти "невидимые" символы портят сортировку, нарушают работу функций ВПР и ПОИСКПОЗ, а иногда делают невозможным сравнение данных. Например, ячейки с текстом "Москва" и " Москва" (с пробелом перед словом) для Excel — это два разных значения.

Хорошая новость: удалить пробелы можно десятком способов — от элементарного ручного редактирования до автоматизированных скриптов. В этой статье мы разберём 7 проверенных методов, включая малоизвестные приёмы с Power Query и VBA, которые экономят часы работы с большими таблицами. Вы узнаете, как убрать пробелы в начале, конце, между словами, а также заменить двойные пробелы на одиночные.

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

Прежде чем приступать, проверьте: а точно ли в ваших ячейках обычные пробелы? Иногда это могут быть неразрывные пробелы (код CHAR(160)), табуляции (CHAR(9)) или другие непечатаемые символы. Их удаление требует отдельного подхода — об этом тоже расскажем ниже.

1. Ручное удаление пробелов: когда формулы не нужны

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

Как это сделать:

  1. Выделите ячейку с лишним пробелом.
  2. Дважды кликните по ней (или нажмите F2), чтобы перейти в режим редактирования.
  3. Удалите пробелы клавишами Backspace или Delete.
  4. Нажмите Enter, чтобы сохранить изменения.

Для ускорения процесса используйте горячие клавиши:

  • 🔹 F2 → редактировать ячейку
  • 🔹 Home → переместить курсор в начало текста
  • 🔹 End → переместить курсор в конец текста
  • 🔹 Ctrl + → или Ctrl + ← → перемещаться по словам

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

📊 Как часто вы сталкиваетесь с лишними пробелами в Excel?
Постоянно
Иногда
Рядом
Никогда

2. Функция TRIM: удаляем пробелы в начале и конце

Функция СЖПРОБЕЛЫ (англ. TRIM) — самый популярный инструмент для очистки текста. Она удаляет:

  • 📌 Все пробелы в начале текста
  • 📌 Все пробелы в конце текста
  • 📌 Двойные пробелы между словами (оставляет только один)

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

=СЖПРОБЕЛЫ(текст)

Где текст — это ссылка на ячейку или текстовая строка.

Пример: если в ячейке A1 записано " Москва город ";, формула =СЖПРОБЕЛЫ(A1) вернёт "Москва город".

⚠️ Внимание: СЖПРОБЕЛЫ не удаляет неразрывные пробелы (код 160). Для них нужна комбинация с ПОДСТАВИТЬ (см. следующий раздел).

Чтобы применить СЖПРОБЕЛЫ ко всему столбцу:

  1. Введите формулу в первую ячейку (например, B1).
  2. Дважды кликните по правому нижнему углу ячейки (маркер автозаполнения), чтобы скопировать формулу вниз.
  3. Выделите столбец с формулами, скопируйте (Ctrl+C), затем вставьте значения (ПКМ → Специальная вставка → Значения).

☑️ Подготовка к очистке данных TRIM

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

3. Продвинутая очистка: TRIM + SUBSTITUTE для неразрывных пробелов

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

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

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

  1. ПОДСТАВИТЬ(A1;СИМВОЛ(160);" ") — заменяет неразрывные пробелы на обычные.
  2. ПОДСТАВИТЬ(..." ";" ") — удаляет двойные пробелы (если они остались).
  3. СЖПРОБЕЛЫ(...) — доводит текст до идеала.

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

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

Но будьте осторожны: это преобразует текст "Москва город" в "Московгород".

💡 Совет: Чтобы проверить, есть ли в тексте неразрывные пробелы, используйте формулу:

=ЕСЛИ(НАЙТИ(СИМВОЛ(160);A1);"Есть!";"Нет")
Проблема Формула для решения Пример до/после
Пробелы в начале/конце =СЖПРОБЕЛЫ(A1) " Москва ""Москва"
Неразрывные пробелы =ПОДСТАВИТЬ(A1;СИМВОЛ(160);" ") "Москва город""Москва город"
Двойные пробелы =ПОДСТАВИТЬ(A1;" ";" ") "Москва город""Москва город"
Все пробелы (включая между словами) =ПОДСТАВИТЬ(A1;" ";"") "Москва город""Московгород"

4. Найти и заменить: быстрая очистка без формул

Если пробелы однотипные (например, только в начале строк), проще воспользоваться инструментом "Найти и заменить" (Ctrl+H). Этот метод работает мгновенно даже для таблиц с тысячами строк.

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

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

⚠️ Внимание: Этот способ удаляет все пробелы, включая необходимые между словами. Чтобы удалить только пробелы в начале/конце:

  • 🔹 В поле "Найти" введите " " (пробел перед текстом).
  • 🔹 В поле "Заменить на" введите "" (ничего).
  • 🔹 Повторите для пробелов в конце (" ").

Для удаления неразрывных пробелов:

  1. В поле "Найти" введите СИМВОЛ(160) (но это не сработает напрямую).
  2. Вместо этого скопируйте неразрывный пробел из ячейки (выделите его и Ctrl+C), затем вставьте в поле "Найти".

5. Power Query: автоматическая очистка больших данных

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

Как удалить пробелы с помощью Power Query:

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

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

  • 📈 Очистка происходит одним кликом после настройки.
  • 🔄 При обновлении исходных данных процесс повторяется автоматически.
  • 🛠️ Можно комбинировать с другими преобразованиями (разделение столбцов, замена текста и т.д.).

⚠️ Внимание: Power Query не удаляет неразрывные пробелы по умолчанию. Чтобы их очистить, добавьте шаг "Заменить значения" с поиском СИМВОЛ(160) (введите его вручную в поле).

Как сохранить запрос Power Query для повторного использования?

1. После настройки очистки нажмите "Закрыть и загрузить в...". 2. Выберите "Только создать соединение". 3. Теперь ваш запрос сохранён в разделе "Запросы и соединения" (вкладка "Данные"). 4. Чтобы применить его к новым данным, кликните ПКМ по запросу → "Загрузить в...".

6. Макрос VBA: удаление пробелов за 1 клик

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

  • 🖥️ Обычные пробелы в начале/конце
  • 🖥️ Неразрывные пробелы (CHAR(160))
  • 🖥️ Двойные пробелы между словами

Как установить макрос:

  1. Нажмите Alt+F11, чтобы открыть редактор VBA.
  2. Вставьте новый модуль: Вставка → Модуль.
  3. Скопируйте код ниже и вставьте в окно модуля.
  4. Закройте редактор и вернитесь в Excel.
Sub УдалитьПробелы()

Dim rng As Range

Dim cell As Range

Set rng = Selection ' Работает с выделенным диапазоном

For Each cell In rng

If Not IsEmpty(cell) Then

' Удаляем обычные пробелы в начале/конце

cell.Value = Trim(cell.Value)

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

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

' Удаляем двойные пробелы

Do While InStr(cell.Value, " ") > 0

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

Loop

End If

Next cell

End Sub

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

  1. Выделите диапазон ячеек с пробелами.
  2. Нажмите Alt+F8, выберите макрос УдалитьПробелы и кликните "Выполнить".

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

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

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

Популярные решения:

  • 📌 Kutools for Excel — включает инструмент "Trim Spaces", который удаляет все типы пробелов (включая неразрывные) в выбранном диапазоне. Есть бесплатная пробная версия.
  • 📌 Ablebits — надстройка с функцией "Clean Cells", которая очищает пробелы, непечатаемые символы и даже исправляет ошибки в тексте.
  • 📌 Power Tools — пакет инструментов для работы с текстом, включая удаление пробелов и замену символов.

💡 Совет: Перед покупкой плагина проверьте, есть ли в нём функция "Batch Processing" — она позволяет очищать пробелы во всех файлах папки автоматически.

⚠️ Внимание: Надстройки могут конфликтовать с макросами или другими плагинами. Всегда тестируйте их на копии данных, а не на рабочих файлах.

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

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

Почему функция СЖПРОБЕЛЫ не удаляет пробелы в моей таблице?

Скорее всего, в ваших данных используются неразрывные пробелы (код 160). Они выглядят как обычные, но СЖПРОБЕЛЫ их не обрабатывает. Используйте комбинацию:

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

Также проверьте, нет ли в тексте табуляций (CHAR(9)) или других непечатаемых символов.

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

Используйте формулу с ЛЕВСИМВ и ПСТР:

=ЕСЛИ(ЛЕВСИМВ(A1)=" ";ПСТР(A1;2;ДЛСТР(A1)-1);A1)

Для удаления только пробелов в конце:

=ЕСЛИ(ПРАВСИМВ(A1)=" ";ЛЕВСИМВ(A1;ДЛСТР(A1)-1);A1)
Можно ли удалить пробелы при импорте данных из CSV?

Да, используйте Power Query при импорте:

  1. При импорте CSV выберите "Преобразовать данные" (вместо "Загрузить").
  2. В Power Query выделите текстовые столбцы и примените "Обрезать" (вкладка "Преобразование").
  3. Добавьте шаг замены неразрывных пробелов (если нужно).

Теперь при каждом обновлении данных пробелы будут удаляться автоматически.

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

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

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

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

Почему после удаления пробелов функция ВПР перестала работать?

Вероятно, в искомом значении или таблице поиска остались пробелы. Проверьте:

  • 🔹 Примените СЖПРОБЕЛЫ ко всем ячейкам, участвующим в ВПР.
  • 🔹 Убедитесь, что в критерии поиска нет скрытых символов (используйте =ДЛСТР(A1) для проверки реальной длины текста).
  • 🔹 Если ВПР возвращает #Н/Д, попробуйте использовать ИНДЕКС/ПОИСКПОЗ с СЖПРОБЕЛЫ:
    =ИНДЕКС(Диапазон_поиска;ПОИСКПОЗ(СЖПРОБЕЛЫ(Искомое_значение);СЖПРОБЕЛЫ(Диапазон_критериев);0);Номер_столбца)