10

У меня есть таблица данных Excel, которую я скопировал из HTML-таблицы в Internet Explorer. Кажется, что столбец значений таблицы имеет пробел в конце, но Trim не удалит его. Когда я вставляю специальное значение результата функции Trim , он все еще имеет пробел в конце.

Может быть, это какой-то другой символ пробела, который Trim не удаляет?

4 ответа4

17

Символ 160 - это неразрывный пробел, символ, разработанный, чтобы выглядеть как пробел, но при этом оставаться частью слова, заставляя смежные слова оставаться вместе. Вы можете преобразовать их в обычные пробелы, а затем использовать обрезку.

Предполагая, что текст в A1 , используйте:

=TRIM(SUBSTITUTE(A1, CHAR(160), " "))
1

Если у него только один пробел, и давайте предположим, что столбец - A.

A1= "CELL A1 "
A2= "CELL A2 "

Then B1 would be =LEFT(A1, LEN(A1)-1)
Then B2 would be =LEFT(A2, LEN(A2)-1)
0

Я полагаю, что было бы проще выбрать весь лист и использовать команду «Заменить» (Ctrl+H), чтобы заменить все неразрывные пробелы (NBSP) пробелами. Это все еще оставляет пробелы в конце ячеек, но избегает удаления NBSP из середины ячеек. Вы все еще нуждаетесь в Trim, но это проще, чем TRIM (ЗАМЕНА (...)).

Я думал, что смогу войти в NBSP с помощью Alt+160, но у меня это не сработало. Мне пришлось использовать Вставить символ, чтобы поместить NBSP в ячейку, скопировать его оттуда и поместить в поле «Найти».

В случае вставки символа NBSP - это пустая ячейка в третьей строке под 4.

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

0

Попробуйте функцию CLEAN(x) - она избавится от всей этой болтовни, особенно там, где у вас есть смесь 161, 160 и т.д.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .