Типичная ошибка, которая встречается в электронных таблицах, связана с невидимыми символами пробелов. [1] В ячейке В2 (рис. 1) находится формула, берущая название цвета в ячейке В1 и возвращающая соответствующий код из таблицы D1:E6: =ВПР(B1;D1:E6;2;ЛОЖЬ).
Рис. 1. Формула поиска возвращает цвет, введенный в ячейку В1
Скачать заметку в формате Word или pdf, примеры в формате Excel
В следующем примере формула в ячейке В2 возвращает ошибку, указывая, что значение Красный не было найдено в таблице. Сотни и тысячи пользователей Excel потратили массу времени, чтобы понять, почему подобные операции не работают. Ответ прост: в ячейке D5 написано не «Красный», а «Красный », то есть за словом следует пробел. Для Excel это две разные последовательности символов.
Рис. 2. Формула поиска не может найти в таблице слово «Красный»
Если на рабочем листе тысячи текстовых записей, а вам нужно выполнять сравнения с применением этого текста, то вы, вероятно, захотите найти ячейки с лишними пробелами и исправить их. Под лишними пробелами понимается любое следующее содержимое текстовых записей:
- один ведущий пробел и более;
- один завершающий пробел и более;
- два и более последовательных пробела в самом тексте.
Один из способов идентификации таких ячеек связан с использованием условного форматирования. Чтобы настроить его, выполните следующие действия.
- Выделите все ячейки с текстом, в которых хотите применить условное форматирование.
- Выполните команду Главная –> Условное форматирование –> Создать правило, чтобы открыть диалоговое окно Создание правила форматирования (рис. 3).
- В верхней части этого окна выберите параметр Использовать формулу для определения форматируемых ячеек.
- В области Измените описание правила введите формулу: =D2<>СЖПРОБЕЛЫ(D2). Данная формула предполагает, что ячейка D2 является верхней левой ячейкой в диапазоне. Если это не так, замените адрес верхней левой ячейки, который вы указали в шаге 1.
- Нажмите кнопку Формат, чтобы отобразить диалоговое окно Формат ячеек, и выберите тип форматирования, которое хотите применить к ячейкам, содержащим лишние пробелы, — например, желтую заливку.
- Нажмите Ok два раза.
В результате во всем диапазоне, который вы выделили на шаге 1, ячейки с лишними пробелами будут выделены с помощью заданного вами форматирования, и вы сможете легко их найти и исправить (рис. 4).
Рис. 3. Параметры условного форматирования для выделения ячеек, содержащих лишние пробелы
Рис. 4. Условное форматирование выделило ячейки с лишними пробелами
Функция СЖПРОБЕЛЫ действует так, что формула, описанная в шаге 4, также применяет условное форматирование ко всем числовым ячейкам. Если в вашем диапазоне встречаются числа, используйте на шаге 4 формулу: =ЕСЛИ(НЕ(ЕНЕТЕКСТ(D2));D2<>СЖПРОБЕЛЫ(D2)). Кроме того, нужно иметь в виду, что функция СЖПРОБЕЛЫ не удаляет (и не воспринимает при условном форматировании) знак неразрывного пробела.
[1] По материалам книги Джон Уокенбах. Excel 2013. Трюки и советы. – СПб.: Питер, 2014. – С. 183–185.
Skip to content
Вы узнаете, как с помощью формул удалять начальные и конечные пробелы в ячейке, лишние интервалы между словами, избавляться от неразрывных пробелов и непечатаемых символов.
В чем самая большая проблема с пробелами? Часто они невидимы для человеческого глаза. Внимательный пользователь может иногда заметить пустой интервал, скрывающийся перед текстом, или несколько ненужных пустот между словами. Но нет никакого способа визуально обнаружить конечные пробелы, те, которые находятся вне поля зрения в конце ячеек.
- Удаляем все пробелы при помощи «Найти и заменить»
- Используем формулу СЖПРОБЕЛЫ
- Удаление начальных и концевых пробелов формулой
- Как убрать разрыв строки и непечатаемые символы
- Формула для удаления неразрывных пробелов
- Как найти и удалить непечатаемый символ
- Как цифры с пробелами преобразовать в число
- Считаем пробелы при помощи формулы
- Простой способ удаления пробелов без формул.
Не было бы большой проблемы, если бы эти лишние интервалы просто существовали, но они могут повлиять на результаты ваших формул. Дело в том, что две ячейки, содержащие один и тот же текст с пробелами и без них, даже если это всего лишь один знак, считаются разными значениями. В результате вы можете ломать голову, пытаясь понять, почему очевидно правильная формула не может соответствовать двум, казалось бы, идентичным записям.
Теперь, когда вы полностью осознаете проблему, пришло время найти решение. Есть несколько способов удалить пробелы из строки, и это руководство поможет вам выбрать метод, наиболее подходящий для вашей конкретной задачи и типа данных, с которым вы работаете.
Как убрать пробелы в Excel при помощи «Найти и заменить»
Это более быстрый метод, который может быть полезен в следующих ситуациях:
- Удаление двойных интервалов.
Обратите внимание, что этот метод не рекомендуется использовать для удаления начальных или конечных пробелов, так как хотя бы один их них там все равно останется.
Итак, найдем и заменим двойные интервалы независимо от их расположения.
Вот как это можно сделать:
- Выделите ячейки, из которых вы хотите их удалить.
- Перейдите на главное меню -> Найти и выбрать -> Заменить.(Также можно использовать сочетание клавиш —
CTRL + H
). - В диалоговом окне «Найти и заменить» введите:
- Найти: Двойной пробел.
- Заменить на: Одинарный.
Нажмите «Заменить все».
Обратите внимание, что если у вас есть три интервала между двумя словами, то теперь вы получите два (один будет удален). В таких случаях вы можете повторить эту операцию снова, чтобы удалить любые двойные пробелы, которые ещё могли остаться.
Недостатки этого метода вы видите сами: перед некоторыми из слов остался начальный пробел. Аналогично остались и конечные пробелы после текста, просто они не видны явно. Поэтому для текстовых выражений я не рекомендовал бы применение этого способа.
- Чтобы удалить все пробелы в тексте, выполните следующие действия:
- Выделите нужные ячейки.
- Перейдите в меню Главная -> Найти и выбрать -> Заменить. (Также можно использовать сочетание клавиш —
CTRL + H
). - В диалоговом окне «Найти и заменить» введите:
Найти: одинарный пробел.
Заменить на: оставьте это поле пустым.
- Нажмите «Заменить все».
Это удалит все пробелы в выбранном диапазоне.
Вряд ли стоит производить такие манипуляции с текстовыми данными, а вот для чисел вполне подойдет. Интервалы между разрядами часто возникают при импорте данных из других программ через .csv файл. Правда, на рисунке вы видите, что цифры все равно остались записаны в виде текста, но вид их стал более упорядоченным. Как превратить их в настоящие числа — поговорим далее отдельно.
Функция СЖПРОБЕЛЫ.
Если ваш набор данных содержит лишние пробелы, функция СЖПРОБЕЛЫ может помочь вам удалить их все одним махом — ведущие, конечные и несколько промежуточных, оставив только один интервал между словами.
Стандартный синтаксис очень простой:
=СЖПРОБЕЛЫ(A2)
Где A2 — ячейка, из которой вы хотите удалить.
Как показано на следующем скриншоте, СЖПРОБЕЛЫ успешно удалила всё до и после текста, а также лишние интервалы в середине строки.
И теперь вам нужно только заменить значения в исходном столбце новыми. Самый простой способ сделать это — использовать Специальная вставка > Значения.
Формулы для удаления начальных и концевых пробелов.
В некоторых ситуациях вы можете вводить двойные или даже тройные интервалы между словами, чтобы ваши данные были более удобочитаемыми. Однако вам нужно избавиться от ведущих пробелов (находящихся в начале), например:
Как вы уже знаете, функция СЖПРОБЕЛЫ удаляет лишние интервалы в середине текстовых строк, чего мы в данном случае не хотим. Чтобы сохранить их нетронутыми, мы будем использовать немного более сложную конструкцию:
=ПСТР(A2;НАЙТИ(ПСТР(СЖПРОБЕЛЫ(A2);1;1);A2);ДЛСТР(A2))
Это выражение в начале вычисляет позицию первого знака в строке. Затем вы передаете это число другой функции ПСТР, чтобы она возвращала всю текстовую строку (длина строки рассчитывается с помощью ДЛСТР), начиная с позиции первого знака.
Вы видите, что все ведущие пробелы исчезли, хотя несколько интервалов между словами всё же остались.
В качестве последнего штриха замените исходный текст полученными значениями, как это было описано выше.
Если же нужно удалить только пробелы в конце каждой ячейки, то формула будет немного сложнее:
=ЛЕВСИМВ(A2;МАКС((ПСТР(A2&ПОВТОР(» «;99);СТРОКА(A2:A100);1)<>» «)*СТРОКА(A2:A100)))
И обратите снимание, что ее нужно вводить как формулу массива (с Ctrl+Shift+Enter
). В столбце A выровнять по правому краю получилось плохо из-за разного количества концевых пробелов в каждой ячейке. В столбце B эта проблема решена, и можно красиво расположить текст.
Как удалить разрывы строк и непечатаемые символы
При импорте данных из внешних источников появляются не только лишние пробелы, но и различные непечатаемые символы, такие как возврат каретки, перевод строки, вертикальная или горизонтальная табуляция и т.д.
Функция СЖПРОБЕЛЫ может избавиться от пробелов, но не может устранить непечатаемые символы. Технически она предназначена для удаления только значения 32 в 7-битной системе ASCII , которое как раз и является кодом пробела.
Чтобы удалить ещё и непечатаемые символы в строке, используйте её в сочетании с функцией ПЕЧСИМВ (CLEAN в английской версии). Как следует из названия, ПЕЧСИМВ предназначена для очистки данных от ненужного «мусора» и умеет удалять любой из первых 32 непечатаемых символов в 7-битном наборе ASCII (значения от 0 до 31), включая разрыв строки (значение 10).
Предполагая, что очищаемые данные находятся в ячейке A2, формула будет следующей:
=СЖПРОБЕЛЫ(ПЕЧСИМВ(A2))
Практически всегда, когда при помощи приведенного выше выражения вы удаляете разрывы строки, то отдельные слова оказываются «склеенными» друг с другом. Вы можете исправить это, используя один из следующих способов:
- Воспользуйтесь инструментом Excel «Заменить все»: в поле «Найти» введите возврат каретки, нажав сочетание клавиш
Ctrl
+J
. И в поле «Заменить» введите пробел. При нажатии кнопки «Заменить все» все разрывы строк в выбранном диапазоне заменяются пробелами. - Используйте следующую формулу для замены возврата каретки (код 13) и перевода строки (код 10) на пробелы:
=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2; СИМВОЛ(13);» «); СИМВОЛ(10); » «))
Как видите, почтовый адрес в колонке С выглядит вполне читаемо.
Как убрать неразрывные пробелы в Excel?
Если после использования формулы СЖПРОБЕЛЫ и ПЕЧСИМВ некоторые упрямые знаки все еще остаются, то скорее всего, вы скопировали / вставили данные из интернета или из другой программы, и несколько неразрывных пробелов все же прокрались в вашу таблицу.
Чтобы избавиться от неразрывных пробелов (html-код ), замените их обычными, а затем попросите функцию СЖПРОБЕЛЫ удалить их:
=СЖПРОБЕЛЫ((ПОДСТАВИТЬ(A2;СИМВОЛ(160);» «)))
Чтобы лучше понять логику, давайте разберем формулу:
- Неразрывный пробел имеет код 160 в 7-битной системе ASCII, поэтому вы можете определить его с помощью СИМВОЛ(160).
- Функция ПОДСТАВИТЬ используется для превращения неразрывных пробелов в обычные.
- И, наконец, вы вставляете ПОДСТАВИТЬ в СЖПРОБЕЛЫ, чтобы окончательно удалить всё лишнее.
Если ваш рабочий лист также содержит непечатаемые символы, дополнительно к описанному выше используйте ещё функцию ПЕЧСИМВ, чтобы избавиться от пробелов и других ненужных знаков одним махом:
=СЖПРОБЕЛЫ(ПЕЧСИМВ((ПОДСТАВИТЬ(A2;СИМВОЛ(160);» «))))
Следующий скриншот демонстрирует разницу в результатах:
Как удалить определенный непечатаемый символ
Если взаимодействие трех функций, описанных в приведенном выше примере, не смогло устранить весь мусор из текста, то это означает, что оставшиеся знаки имеют значения ASCII, отличные от 0 до 32 (непечатаемые символы) или 160 (неразрывный пробел).
В этом случае используйте функцию КОДСИМВ, чтобы сначала идентифицировать код мешающего вам знака, а затем используйте ПОДСТАВИТЬ, чтобы заменить его обычным пробелом. А затем при помощи СЖПРОБЕЛЫ удалите его.
Предполагая, что нежелательные символы, от которых вы хотите избавиться, находятся в ячейке A2, вы пишете два выражения:
- В ячейке С2 определите код проблемного знака, используя одну из следующих функций:
- Ведущий пробел или непечатаемый символ в начале строки:
=КОДСИМВ(ЛЕВСИМВ(A2;1))
- Конечный пробел или непечатаемый символ в конце строки:
= КОДСИМВ(ПРАВСИМВ(A2;1))
- Пробел или непечатаемый символ в середине строки, где n — позиция проблемного знака:
= КОДСИМВ(ПСТР(A2, n, 1)))
В этом примере у нас есть неизвестный знак в середине текста, в 11-й позиции, и мы определим его код:
=КОДСИМВ(ПСТР(A2;11;1))
Получаем значение 127 (см. скриншот ниже).
- В ячейке C3 вы заменяете СИМВОЛ(127) обычным пробелом (» «), а затем просто удаляете его:
=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(A2;СИМВОЛ(127); » «))
Если ваши данные содержат несколько разных непечатаемых символов, а также неразрывные пробелы, вы можете вложить две или более функции ПОДСТАВИТЬ друг в друга для одновременного удаления всех нежелательных знаков:
=СЖПРОБЕЛЫ(ПЕЧСИМВ((ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;СИМВОЛ(127);» «);СИМВОЛ(160);» «))))
Результат должен выглядеть примерно так:
Эту универсальную формулу мы и использовали. Как видите, успешно.
Как удалить все пробелы
В некоторых ситуациях может потребоваться удалить абсолютно все пробелы в ячейке, включая те, что находятся между словами или числами. Например, если вы импортировали в вашу таблицу числовой столбец, в котором пробелы используются в качестве разделителей тысяч. Конечно, разделители разрядов упрощают чтение больших чисел, но они же препятствуют вычислению ваших формул. Такие разделители нужно создавать при помощи форматирования, а не вручную.
Чтобы удалить все пробелы одним махом, используйте ПОДСТАВИТЬ, как описано в предыдущем примере, с той лишь разницей, что вы заменяете знак пробела, возвращаемый при помощи СИМВОЛ(32), ничем («»):
=ПОДСТАВИТЬ(A2; СИМВОЛ(32); «»)
Или вы можете просто ввести его (» «) в формуле, например:
=ПОДСТАВИТЬ(A2; “ “; «»)
Результатом этого будет текст, состоящий из цифр. Если же в качестве результата вам нужны именно числа, добавьте перед формулой два знака “-“ (минус). Любая математическая операция автоматически превращает цифры в число. А дважды применив минус, то есть дважды умножив на минус 1, мы не изменим величину числа и его знак.
Как посчитать пробелы в Excel
Чтобы получить общее количество пробелов в ячейке, выполните следующие действия:
- Вычислите всю длину строки с помощью функции ДЛСТР: ДЛСТР (A2)
- Замените все пробелы ничем: ПОДСТАВИТЬ(A2; » «; «»)
- Вычислить длину строки без пробелов: ДЛСТР(ПОДСТАВИТЬ(A2; » «; «»))
- Вычтите этот результат из первоначальной длины.
Предполагая, что исходная текстовая строка находится в ячейке A3, полная формула выглядит следующим образом:
=ДЛСТР(A3) — ДЛСТР(ПОДСТАВИТЬ(A3;» «;»»))
Чтобы узнать, сколько лишних пробелов в ячейке, получите длину текста без них, а затем вычтите ее из первоначальной длины:
=ДЛСТР(A3)-ДЛСТР(СЖПРОБЕЛЫ(A3))
На рисунке показаны обе формулы в действии:
Теперь, когда вы знаете, сколько пробелов содержит каждая ячейка, вы можете безопасно удалить лишние, используя функцию СЖПРОБЕЛЫ.
Простой способ удаления пробелов без формул.
Как вы уже знаете, лишние пробелы и другие нежелательные символы могут незаметно скрываться на ваших листах, особенно если вы импортируете данные из внешних источников. Вы также знаете, как удалять пробелы в Excel с помощью формул. Конечно, изучение нескольких формул – хорошее упражнение для оттачивания ваших навыков, но это может занять много времени.
Пользователи Excel, которые ценят свое время и ценят удобство, могут воспользоваться текстовыми инструментами, включенными в надстройку Ultimate Suite for Excel . Один из этих удобных инструментов позволяет удалять пробелы и непечатаемые символы одним нажатием кнопки.
После установки Ultimate Suite добавляет на ленту Excel несколько полезных кнопок, таких как «Удалить пробелы» , «Удалить символы» , «Преобразовать текст» и многое другое.
Всякий раз, когда вы хотите удалить лишние пробелы в таблицах Excel, выполните следующие 4 быстрых шага:
- Выделите ячейки (диапазон, весь столбец или строку), в которых вы хотите удалить лишние пробелы.
- Нажмите кнопку «Trim Spaces» на вкладке «Ablebits Data».
- Выберите один или несколько вариантов:
- Обрезать начальные и конечные пробелы.
- Удалить лишние пробелы между словами, кроме одного.
- Удалить неразрывные пробелы ( )
- Удалить лишние переносы строк до и после значений, между значениями оставить только один.
- Удалить все переносы строк в ячейке.
- Нажмите кнопку «Trim» .
Готово! Все лишние пробелы удалены одним щелчком мыши:
Здесь мы вместе с лишними пробелами удалили еще и переводы строки, чтобы значения располагались в привычном виде, в одну строку.
Вот как можно быстро удалить пробелы в ячейках Excel. Если вам интересно изучить другие возможности работы с текстовыми значениями (и не только), вы можете загрузить
ознакомительную версию Ultimate Suite. Благодарю вас за чтение и с нетерпением жду встречи с вами в нашем блоге на следующей неделе!
Весьма часто в нашем распоряжении оказываются данные, которые хоть и содержат полезную информацию, но не пригодны для немедленного анализа. Одной из весьма распространенных проблем является наличие лишних пробелов — в начале, в конце или внутри между словами.
Лечится эта проблема очень легко — специальной функцией СЖПРОБЕЛЫ (TRIM). Она убирает все лишние пробелы, но оставляет по одному пробелу между словами:
Просто и красиво. Но есть пара нюансов.
Неразрывные пробелы не удаляются
Чайной ложкой дегтя тут представляется только невозможность удалять таким способом неразрывные пробелы. Это особый вариант пробела (внешне неотличимый от обычного), на котором не бывает переноса строки. Обычно его используют в случаях типа «г. Москва» или «Иванов И.И.», чтобы эти фразы не разбивались между строчками. В Microsoft Word такой спецсимвол вводится сочетанием клавиш Ctrl+Shift+Пробел и отображается в виде кружка, а не точки:
К сожалению, функция СЖПРОБЕЛЫ (TRIM) удаляет только обычные пробелы. Для удаления неразрывных нужно использовать другие функции или макросы.
Формулы для удаления начальных и концевых пробелов
Если необходимо удалить только начальные пробелы (т.е. не трогать концевые и пробелы между словами), то придется делать это хитрыми формулами, т.к. готовой функции (по аналогии с функцией LTrim в VBA) в Microsoft Excel, к сожалению, нет.
Формула для удаления лишних пробелов только слева будет выглядеть так:
В английской версии =MID(A1;FIND(LEFT(TRIM(A1));A1);LEN(A1))
Формула для удаления лишних пробелов только справа будет чуть посложнее и должна вводиться уже как формула массива (с Ctrl+Shift+Enter):
В английском варианте это будет =LEFT(A1;MAX((MID(A1&REPT(» «;99);ROW(A1:A99),1);» «)*ROW(A1:A99)))
Ссылки по теме
- Подсветка ячеек с лишними пробелами условным форматированием
- Зачистка текста от лишних пробелов, непечатаемых символов, английских букв и т.д.
- Как проверить текст на соответствие заданному шаблону (маске)
Содержание
- Технология удаления пробелов
- Способ 1: использование инструмента «Заменить»
- Способ 2: удаление пробелов между разрядами
- Способ 3: удаление разделителей между разрядами путем форматирования
- Способ 4: удаление пробелов с помощью функции
- Вопросы и ответы
Лишние пробелы в тексте не красят любой документ. Особенно их не нужно допускать в таблицах, которые предоставляются руководству или общественности. Но даже, если вы собираетесь использовать данные только в личных целях, лишние пробелы способствуют увеличению объема документа, что является негативным фактором. Кроме того, наличие подобных лишних элементов затрудняет поиск по файлу, применение фильтров, использование сортировки и некоторых других инструментов. Давайте выясним, какими способами их можно быстро найти и убрать.
Урок: Удаление больших пробелов в Microsoft Word
Технология удаления пробелов
Сразу нужно сказать, что пробелы в Excel могут быть разного типа. Это могут быть пробелы между словами, пробел в начале значения и в конце, разделители между разрядами числовых выражений и т.д. Соответственно и алгоритм их устранения в этих случаях различный.
Способ 1: использование инструмента «Заменить»
С заменой двойных пробелов между словами на одинарные в Экселе отлично справляется инструмент «Заменить».
- Находясь во вкладке «Главная», кликаем по кнопке «Найти и выделить», которая размещена в блоке инструментов «Редактирование» на ленте. В выпадающем списке выбираем пункт «Заменить». Можно также вместо вышеперечисленных действий просто набрать сочетание клавиш на клавиатуре Ctrl+H.
- В любом из вариантов открывается окно «Найти и заменить» во вкладке «Заменить». В поле «Найти» устанавливаем курсор и дважды кликаем по кнопке «Пробел» на клавиатуре. В поле «Заменить на» вставляем один пробел. Затем жмем по кнопке «Заменить все».
- Программа производит замену двойного пробела на одинарный. После этого появляется окно с отчетом о проделанной работе. Жмем на кнопку «OK».
- Далее опять появляется окно «Найти и заменить». Выполняем в этом окне точно такие же действия, как описаны во втором пункте данной инструкции до тех пор, пока не появится сообщение о том, что искомые данные не найдены.
Таким образом, мы избавились от лишних двойных пробелов между словами в документе.
Урок: Замена символов в Excel
Способ 2: удаление пробелов между разрядами
В некоторых случаях между разрядами в числах устанавливаются пробелы. Это не ошибка, просто для визуального восприятия больших чисел именно такой вид написания более удобен. Но, все-таки далеко не всегда это приемлемо. Например, если ячейка не отформатирована под числовой формат, добавление разделителя может негативно отразиться на корректности вычислений в формулах. Поэтому актуальным становится вопрос об удалении таких разделителей. Эту задачу можно выполнить при помощи все того же инструмента «Найти и заменить».
- Выделяем столбец или диапазон, в котором нужно удалить разделители между цифрами. Этот момент очень важен, так как если диапазон не будет выделен, то инструмент уберет все пробелы из документа, в том числе и между словами, то есть, там, где они действительно нужны. Далее, как и ранее, кликаем по кнопке «Найти и выделить» в блоке инструментов «Редактирование» на ленте во вкладке «Главная». В добавочном меню выбираем пункт «Заменить».
- Снова запускается окно «Найти и заменить» во вкладке «Заменить». Но на этот раз мы будем вносить в поля немного другие значения. В поле «Найти» устанавливаем один пробел, а поле «Заменить на» оставляем вообще незаполненным. Чтобы удостовериться на предмет того, что в этом поле нет пробелов, устанавливаем курсор в него и зажимаем кнопку backspace (в виде стрелки) на клавиатуре. Держим кнопку до тех пор, пока курсор не упрется в левую границу поля. После этого жмем на кнопку «Заменить все».
- Программа выполнит операцию удаления пробелов между цифрами. Как и в предыдущем способе, чтобы удостоверится, что задача полностью выполнена, производим повторный поиск, пока не появится сообщение, что искомое значение не найдено.
Разделения между разрядами будут удалены, а формулы начнут вычисляться корректно.
Способ 3: удаление разделителей между разрядами путем форматирования
Но бывают ситуации, когда вы четко видите, что на листе разряды разделены в числах пробелами, а поиск не дает результатов. Это говорит о том, что в данном случае разделение было выполнено путем форматирования. Такой вариант пробела не повлияет на корректность отображения формул, но в то же время некоторые пользователи считают, что без него таблица будет выглядеть лучше. Давайте рассмотрим, как убрать такой вариант разделения.
Так как пробелы были сделаны с помощью инструментов форматирования, то только при помощи этих же инструментов их можно убрать.
- Выделяем диапазон чисел с разделителями. Кликаем по выделению правой кнопкой мыши. В появившемся меню выбираем пункт «Формат ячеек…».
- Происходит запуск окна форматирования. Переходим во вкладку «Число», в случае если открытие произошло в другом месте. Если разделение было задано при помощи форматирования, то в блоке параметров «Числовые форматы» должен быть установлен вариант «Числовой». В правой части окна располагаются точные настройки данного формата. Около пункта «Разделитель групп рядов ()» вам просто нужно будет снять галочку. Затем, чтобы произведенные изменения вступили в силу, жмите на кнопку «OK».
- Окно форматирования закроется, а разделения между разрядами чисел в выбранном диапазоне будут убраны.
Урок: Форматирование таблиц в Excel
Способ 4: удаление пробелов с помощью функции
Инструмент «Найти и заменить» отлично подходит для удаления лишних пробелов между символами. Но что делать, если их нужно убрать в начале или в конце выражения? В этом случае на помощь придет функция из текстовой группы операторов СЖПРОБЕЛЫ.
Данная функция удаляет все пробелы из текста выделенного диапазона, кроме одиночных пробелов между словами. То есть, она способна решить проблему с пробелами в начале слова в ячейке, в конце слова, а также удалить двойные пробелы.
Синтаксис этого оператора довольно прост и имеет всего один аргумент:
=СЖПРОБЕЛЫ(текст)
В качестве аргумента «Текст» может выступать, как непосредственно текстовое выражение, так и ссылка на ячейку в котором оно содержится. Для нашего случая как раз последний вариант и будет рассматриваться.
- Выделяем ячейку, расположенную параллельно столбцу или строке, где следует убрать пробелы. Кликаем по кнопке «Вставить функцию», расположенную слева от строки формул.
- Запускается окно Мастера функций. В категории «Полный алфавитный перечень» или «Текстовые» ищем элемент «СЖПРОБЕЛЫ». Выделяем его и жмем на кнопку «OK».
- Открывается окошко аргументов функции. К сожалению, данная функция не предусматривает использования в качестве аргумента всего нужного нам диапазона. Поэтому устанавливаем курсор в поле аргумента, а затем выделяем самую первую ячейку диапазона, с которым мы работаем. После того, как адрес ячейки отобразился в поле, жмем на кнопку «OK».
- Как видим, содержимое ячейки отобразилось в области, в которой находится функция, но уже без лишних пробелов. Мы выполнили удаление пробелов только для одного элемента диапазона. Чтобы удалить их и в других ячейках, нужно провести аналогичные действия и с другими ячейками. Конечно, можно проводить с каждой ячейкой отдельную операцию, но это может отнять очень много времени, особенно, если диапазон большой. Существует способ значительно ускорить процесс. Устанавливаем курсор в нижний правый угол ячейки, в которой уже содержится формула. Курсор трансформируется в небольшой крестик. Он носит название маркера заполнения. Зажимаем левую кнопку мыши и тянем маркер заполнения параллельно тому диапазону, в котором нужно убрать пробелы.
- Как видим, после этих действий образуется новый заполненный диапазон, в котором находится все содержимое исходной области, но без лишних пробелов. Теперь перед нами стоит задача заменить преобразованными данными значения исходного диапазона. Если мы выполним простое копирование, то скопирована будет формула, а значит, вставка произойдет некорректно. Поэтому нам нужно произвести только копирование значений.
Выделяем диапазон с преобразованными значениями. Жмем на кнопку «Копировать», расположенную на ленте во вкладке «Главная» в группе инструментов «Буфер обмена». Как альтернативный вариант можно после выделения набрать сочетание клавиш Ctrl+C.
- Выделяем исходный диапазон данных. Кликаем по выделению правой кнопкой мыши. В контекстном меню в блоке «Параметры вставки» выбираем пункт «Значения». Он изображен в виде квадратной пиктограммы с цифрами внутри.
- Как видим, после вышеописанных действий значения с лишними пробелами были заменены идентичными данными без них. То есть, поставленная задача выполнена. Теперь можно удалить транзитную область, которая была использована для трансформации. Выделяем диапазон ячеек, в которых содержится формула СЖПРОБЕЛЫ. Кликаем по нему правой кнопкой мыши. В активировавшемся меню выбираем пункт «Очистить содержимое».
- После этого лишние данные будут убраны с листа. Если в таблице существуют другие диапазоны, которые содержат лишние пробелы, то с ними нужно поступить по точно такому же алгоритму, какой был описан выше.
Урок: Мастер функций в Excel
Урок: Как сделать автозаполнение в Excel
Как видим, существует целый ряд способов быстрого удаления лишних пробелов в Экселе. Но все эти варианты реализуются при помощи всего двух инструментов – окна «Найти и заменить» и оператора СЖПРОБЕЛЫ. В отдельном случае можно использовать также форматирование. Не существует универсального способа, который было бы максимально удобно использовать во всех ситуациях. В одном случае будет оптимальным использовать один вариант, а во втором – другой и т.д. Например, с удалением двойного пробела между словами быстрее всего справится инструмент «Найти и заменить», а вот убрать пробелы в начале и в конце ячейки корректно сможет только функция СЖПРОБЕЛЫ. Поэтому о применении конкретного способа пользователь должен принимать решение самостоятельно с учетом ситуации.
Типичная ошибка, которая встречается в электронных таблицах, связана с невидимыми символами пробелов. [1] В ячейке В2 (рис. 1) находится формула, берущая название цвета в ячейке В1 и возвращающая соответствующий код из таблицы D1:E6: =ВПР(B1;D1:E6;2;ЛОЖЬ).
Рис. 1. Формула поиска возвращает цвет, введенный в ячейку В1
Скачать заметку в формате Word или pdf, примеры в формате Excel
В следующем примере формула в ячейке В2 возвращает ошибку, указывая, что значение Красный не было найдено в таблице. Сотни и тысячи пользователей Excel потратили массу времени, чтобы понять, почему подобные операции не работают. Ответ прост: в ячейке D5 написано не «Красный», а «Красный », то есть за словом следует пробел. Для Excel это две разные последовательности символов.
Рис. 2. Формула поиска не может найти в таблице слово «Красный»
Если на рабочем листе тысячи текстовых записей, а вам нужно выполнять сравнения с применением этого текста, то вы, вероятно, захотите найти ячейки с лишними пробелами и исправить их. Под лишними пробелами понимается любое следующее содержимое текстовых записей:
- один ведущий пробел и более;
- один завершающий пробел и более;
- два и более последовательных пробела в самом тексте.
Один из способов идентификации таких ячеек связан с использованием условного форматирования. Чтобы настроить его, выполните следующие действия.
- Выделите все ячейки с текстом, в которых хотите применить условное форматирование.
- Выполните команду Главная —> Условное форматирование —> Создать правило, чтобы открыть диалоговое окно Создание правила форматирования (рис. 3).
- В верхней части этого окна выберите параметр Использовать формулу для определения форматируемых ячеек.
- В области Измените описание правила введите формулу: =D2<>СЖПРОБЕЛЫ(D2). Данная формула предполагает, что ячейка D2 является верхней левой ячейкой в диапазоне. Если это не так, замените адрес верхней левой ячейки, который вы указали в шаге 1.
- Нажмите кнопку Формат, чтобы отобразить диалоговое окно Формат ячеек, и выберите тип форматирования, которое хотите применить к ячейкам, содержащим лишние пробелы, — например, желтую заливку.
- Нажмите Ok два раза.
В результате во всем диапазоне, который вы выделили на шаге 1, ячейки с лишними пробелами будут выделены с помощью заданного вами форматирования, и вы сможете легко их найти и исправить (рис. 4).
Рис. 3. Параметры условного форматирования для выделения ячеек, содержащих лишние пробелы
Рис. 4. Условное форматирование выделило ячейки с лишними пробелами
Функция СЖПРОБЕЛЫ действует так, что формула, описанная в шаге 4, также применяет условное форматирование ко всем числовым ячейкам. Если в вашем диапазоне встречаются числа, используйте на шаге 4 формулу: =ЕСЛИ(НЕ(ЕНЕТЕКСТ(D2));D2<>СЖПРОБЕЛЫ(D2)). Кроме того, нужно иметь в виду, что функция СЖПРОБЕЛЫ не удаляет (и не воспринимает при условном форматировании) знак неразрывного пробела.
[1] По материалам книги Джон Уокенбах. Excel 2013. Трюки и советы. — СПб.: Питер, 2014. — С. 183–185.