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

Вы сравниваете два столбца на предмет наличия дубликатов, но ваши формулы не могут найти ни одной повторяющейся записи? Или вы складываете два столбца чисел, но получаете только нули? И почему, черт возьми, ваша очевидно правильная формула ВПР возвращает только кучу ошибок Н/Д? Это лишь несколько примеров проблем, на которые вы, возможно, ищете ответы. И все это вызвано дополнительными пробелами, скрытыми до, после или между числовыми и текстовыми значениями в ваших ячейках.

Microsoft Excel предлагает несколько различных способов очистки данных. В этом руководстве мы исследуем возможности функции СЖПРОБЕЛЫ как самого быстрого и простого способа удаления пробелов в Excel.

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

Синтаксис её самый простой из возможных:

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

Где текст - это ячейка, из которой вы хотите удалить лишние интервалы (или просто текстовая строка, заключённая в двойные кавычки).

Например, чтобы удалить их в ячейке A1, используйте эту формулу:

=СЖПРОБЕЛЫ(A1)

И это скриншот показывает результат:

Ага, это так просто!

Если в дополнение к лишним пробелам ваши данные содержат разрывы строк и непечатаемые символы, используйте функцию СЖПРОБЕЛЫ в сочетании с ПЕЧСИМВ (CLEAN в английской версии), чтобы удалить первые 32 непечатаемых символа в кодовой системе ASCII. 

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

=СЖПРОБЕЛЫ(ПЕЧСИМВ(A1))

Дополнительные сведения см. В разделе Как удалить непечатаемые символы в Excel.

Теперь, когда вы знаете основы, давайте обсудим несколько примеров использования СЖПРОБЕЛЫ в Excel, а также те подводные камни, с которыми вы можете столкнуться.

Как убрать лишние пробелы во всём столбце.

Предположим, у вас есть столбец с именами, в котором есть пробелы до и после текста, а также более одного интервала между словами. Итак, как удалить все начальные, конечные и лишние промежуточные пробелы во всех ячейках одним махом? 

Записав формулу Excel СЖПРОБЕЛЫ в соседний столбец, а затем заменив формулы их значениями. Подробные инструкции приведены ниже.

Напишите это выражение для самой верхней ячейки, A2 в нашем примере:

=СЖПРОБЕЛЫ(A2)

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

Наконец, замените значения в исходном столбце новыми данными. Но будьте осторожны! Простое копирование нового столбца поверх исходного сломает ваши формулы. Чтобы этого не случилось, нужно копировать только значения, а не ячейки целиком. 

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

Выделите все ячейки с расчетами (B2:B8 в этом примере) и нажмите Ctrl + C, чтобы скопировать их. Или по правой кнопке мыши воспользуйтесь контекстным меню.

Выделите все ячейки со старыми данными (A2:A8) и нажмите Ctrl + Alt + V. Эта комбинация клавиш вставляет только значения и делает то же самое, что и контекстное меню Специальная вставка > Значения.

Нажмите ОК. Готово!

Как удалить ведущие пробелы в числовом столбце

Как вы только что видели, функция Excel СЖПРОБЕЛЫ без проблем удалила все лишние интервалы из столбца текстовых данных. Но что, если ваши данные — числа, а не текст?

На первый взгляд может показаться, что функция СЖПРОБЕЛЫ сделала свое дело. Однако при более внимательном рассмотрении вы заметите, что обрезанные значения не ведут себя как числа. Вот лишь несколько признаков аномалии:

  • И исходный столбец, и обрезанные числа выравниваются по левому краю, даже если вы применяете к ним числовой формат. В то время как обычные числа по умолчанию выравниваются по правому краю.
  • Когда выбраны две или более ячеек с очищенными числами, Excel отображает только КОЛИЧЕСТВО в строке состояния.Для чисел он также должен отображать СУММУ и СРЕДНЕЕ.
  • Формула СУММ, примененная к этим ячейкам, возвращает ноль.

И что нам с этим делать?

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

=--A1

Но обращаю внимание, что результатом будет являться по-прежнему текст.

А вот такое хитрое выражение сразу превратит текст “    333” в число 333:

=--(--A1)

Вы видите, что все цифры выровнены по левому краю. Дело в том, что очищенные значения представляют собой текстовые строки, а нам нужны числа. Чтобы исправить это, вы можете умножить «обрезанные» значения на 1 (чтобы умножить все значения одним махом, используйте опцию  Специальная вставка > Умножить).

Более элегантное решение - заключить функцию СЖПРОБЕЛЫ в ЗНАЧЕН, например:

=ЗНАЧЕН(СЖПРОБЕЛЫ(A2))

Приведенное выше выражение удаляет все начальные и конечные пробелы, если они есть, и превращает полученное значение в число, как показано на скриншоте ниже:

И более того, если вам нужно именно число, то можете вовсе не утруждать себя удалением лишних символов перед цифрами. Выражение

=ЗНАЧЕН(A2)

сделает это за вас, и вы сразу получите на выходе число, с которым можно производить различные математические операции.

Кроме того, вы можете применить функцию Excel СЖПРОБЕЛЫ для удаления только начальных пробелов, сохраняя их все в середине текстовой строки без изменений. Пример формулы здесь: Как удалить только ведущие пробелы?

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

Чтобы получить количество лишних пробелов в ячейке, узнайте общую длину текста с помощью функции ДЛСТР, затем вычислите длину строки без дополнительных интервалов и вычтите последнее из первого:

=ДЛСТР(A2)-ДЛСТР(СЖПРОБЕЛЫ(A2))

На рисунке ниже показана приведенная выше формула в действии:

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

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

При работе с конфиденциальной или важной информацией вы можете не решаться удалить что-либо, не видя, что именно вы удаляете. В этом случае вы можете сначала выделить ячейки, содержащие лишние пробелы, а затем безопасно удалить их.

Для этого создайте правило условного форматирования со следующей формулой:

=ДЛСТР($A2)>ДЛСТР(СЖПРОБЕЛЫ($A2))

Где A2 – самый верхний адрес с данными, которые вы хотите выделить.

Мы указываем Excel выделять ячейки, в которых общая длина строки больше, чем длина обрезанного текста.

Чтобы создать правило условного форматирования, выберите все ячейки, которые вы хотите выделить, без заголовков столбцов, перейдите на вкладку «Главная » и нажмите « Условное форматирование» > «Новое правило» > «Используйте формулу…».

Если вы еще не знакомы с условным форматированием Excel, вы найдете подробные инструкции здесь: Как создать правило условного форматирования на основе формулы .

Как показано на скриншоте ниже, результат полностью подтверждается числами, которые мы получили в соседнем столбце:

Как видите, использовать функцию СЖПРОБЕЛЫ в Excel довольно просто. 

Если не работает …

Функция СЖПРОБЕЛЫ предназначена для удаления только символа пробела, представленного значением кода 32 в 7-битном наборе символов ASCII. В наборе Unicode есть так называемый неразрывный пробел, который обычно используется на веб-страницах как символ html & nbsp. Он имеет десятичное значение 160, и функция СЖПРОБЕЛЫ не может удалить его сама. При копировании текста с веб-страниц или из Word вы вполне можете получить его в свою таблицу.

Иногда такие неразрывные пробелы вставляют специально, чтобы фраза в ячейке не разделялась по строкам. К примеру, некрасиво будет, если инициалы будут оторваны от фамилии и перенесены на следующую строку. В Microsoft Word такой спецсимвол вводится сочетанием клавиш Ctrl+Shift+Пробел.

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

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

В качестве дополнительной меры предосторожности вы можете встроить функцию ПЕЧСИМВ для очистки ячейки от любых непечатаемых символов:

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

На этом рисунке показана разница:

Если приведенные выше варианты также не работают, скорее всего, ваши данные содержат некоторые определенные непечатаемые символы с кодовыми значениями, отличными от 32 и 160.

В этом случае используйте одну из следующих формул, чтобы узнать код символа, где A1 - проблемная ячейка:

Перед текстом: = КОДСИМВ (ЛЕВСИМВ(A1;1))

После текста: = КОДСИМВ (ПРАВСИМВ(A1;1))

Внутри ячейки (где n - позиция проблемного знака в текстовой строке):

=КОДСИМВ(ПСТР(A1; n; 1)))

Затем передайте найденный код проблемного символа в СЖПРОБЕЛЫ(ПОДСТАВИТЬ()), как описано выше.

Например, если функция КОДСИМВ возвращает 9, что является знаком горизонтальной табуляции, используйте следующую формулу для ее удаления:

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

Благодарю вас за чтение и с нетерпением жду встречи с вами. В нашем следующем уроке мы обсудим другие способы удаления пробелов в Excel, следите за обновлениями!

Как убрать пробелы в числах в Excel - Представляем 4 быстрых способа удалить лишние пробелы между цифрами в ячейках Excel. Вы можете использовать формулы, инструмент «Найти и заменить» или попробовать изменить формат ячейки. Когда вы вставляете данные из…
Как удалить пробелы в ячейках Excel - Вы узнаете, как с помощью формул удалять начальные и конечные пробелы в ячейке, лишние интервалы между словами, избавляться от неразрывных пробелов и непечатаемых символов. В чем самая большая проблема с…
Функция ПРАВСИМВ в Excel — примеры и советы. - В последних нескольких статьях мы обсуждали различные текстовые функции. Сегодня наше внимание сосредоточено на ПРАВСИМВ (RIGHT в английской версии), которая предназначена для возврата указанного количества символов из крайней правой части…
Функция ЛЕВСИМВ в Excel. Примеры использования и советы. - В руководстве показано, как использовать функцию ЛЕВСИМВ (LEFT) в Excel, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…
Как использовать функцию ПСТР в Excel? - ПСТР - одна из текстовых функций, которые Microsoft Excel предоставляет для управления текстовыми строками. На самом базовом уровне она используется для извлечения подстроки из середины текста.  В этом руководстве мы обсудим…
5 примеров с функцией ДЛСТР в Excel. - Вы ищете формулу Excel для подсчета символов в ячейке? Если да, то вы, безусловно, попали на нужную страницу. В этом коротком руководстве вы узнаете, как использовать функцию ДЛСТР (LEN в английской версии)…
Как быстро сосчитать количество знаков в ячейке Excel - В руководстве объясняется, как считать символы в Excel. Вы изучите формулы, позволяющие получить общее количество символов в диапазоне и подсчитывать только определенные символы в одной или нескольких ячейках. В нашем предыдущем…
Как в Excel разделить текст из одной ячейки в несколько - В руководстве объясняется, как разделить ячейки в Excel с помощью формул и стандартных инструментов. Вы узнаете, как разделить текст запятой, пробелом или любым другим разделителем, а также как разбить строки на…
Как преобразовать текст в число в Excel — 8 способов. - В этом  руководстве показано множество различных способов преобразования текста в число в Excel: опция проверки ошибок в числах, формулы, математические операции, специальная вставка и многое другое. Иногда значения в ваших…