Когда вы копируете или импортируете текстовые данные в лист Excel , электронная таблица иногда сохраняет дополнительные пробелы в дополнение к вставленному содержимому. Как правило, функция TRIM () сама по себе может удалить эти нежелательные пробелы, независимо от того, находятся ли они между словами или в начале или в конце текстовой строки. Однако в определенных ситуациях TRIM () не может выполнять эту работу.
На компьютере пробел между словами — это не пустая область, а символ — и существует более одного типа пробела. Одним из символов пробела, обычно используемым на веб-страницах, который TRIM () не удаляет, является неразрывный пробел .
Если вы импортировали или скопировали данные с веб-страниц, вы не сможете удалить лишние пробелы с помощью функции TRIM (), если они созданы неразрывными пробелами.
Неразрывные и регулярные пространства
Пробелы являются символами, и на каждый символ ссылается его кодовое значение ASCII. ASCII означает Американский стандартный код для обмена информацией — международный стандарт для текстовых символов в компьютерных операционных средах, который создает один набор кодов для 255 различных символов и символов, используемых в компьютерных программах.
Код ASCII для неразрывного пробела — 160 . Код ASCII для обычного пробела равен 32 .
Функция TRIM () может удалять только те пробелы, которые имеют код ASCII 32.
Различные типы поддерживают разные диапазоны кодов ASCII. Стандартная таблица предлагает 127 возможных значений; гарнитуры должны минимально поддерживать 127-символьную карту ASCII, чтобы считаться действительными. Но «расширенные» символы ASCII, вызываемые дополнительными кодами, часто добавляют дополнительные символы в ваши любимые шрифты. Фактически, неразрывный пробел сам по себе является расширенным символом ASCII, тогда как стандартный пробел … ну, стандарт.
Удаление неразрывных пробелов
Удалите неразрывные пробелы из строки текста, используя функции TRIM (), SUBSTITUTE () и CHAR ().
Поскольку функции SUBSTITUTE () и CHAR () вложены в функцию TRIM (), формулу необходимо вводить в таблицу, а не использовать диалоговые окна функций для ввода аргументов .
Формула, предполагающая, что данные с неразрывными пробелами находятся в ячейке A1, имеет вид:
Как работает формула
Каждая вложенная функция выполняет определенную задачу:
- Функция CHAR определяет соответствующие коды ASCII для двух разных пробелов в формуле — 160 и 32
- Функция SUBSTITUTE заменяет или заменяет все неразрывные пробелы между словами на регулярные пробелы
- Функция TRIM удаляет лишние регулярные пробелы между словами, чтобы оператор нормально отображался на листе
Учитывая логику порядка операций формул Excel, формула вызывает функцию SUBSTITUTE () и сообщает ей о замене каждого вхождения CHAR (160) — неразрывного пробела — стандартным пробелом CHAR (32), содержащимся в нем. в ячейке A1. Затем функция TRIM () удаляет стандартные пробелы из замещенной строки.
Соображения
Если TRIM () не может выполнить работу, у вас могут быть проблемы, кроме неразрывных пробелов, особенно если вы работаете с исходным материалом, отображаемым в HTML. Когда вы вставляете материал в Excel, вставьте его как обычный текст, чтобы убрать фоновое форматирование из строки и удалить специальное форматирование, например символы, которые отображаются в виде белого на белом — который выглядит как пробел, но не так. Проверьте также наличие встроенных вкладок, которые можно заменить, используя ту же формулу, что и выше, но заменив код ASCII 160 на 9.
SUBSTITUTE () полезен для замены любого кода ASCII любым другим.