Какво да направите, когато функцията TRIM на Excel не работи

Съдържание:

Какво да направите, когато функцията TRIM на Excel не работи
Какво да направите, когато функцията TRIM на Excel не работи
Anonim

Когато копирате или импортирате текстови данни в работен лист на Excel, електронната таблица понякога запазва допълнителни интервали в допълнение към съдържанието, което сте вмъкнали. Обикновено функцията TRIM() сама по себе си може да премахне тези нежелани интервали, независимо дали се появяват между думите или в началото или края на текстов низ. В определени ситуации обаче TRIM() не може да свърши работата.

На компютър интервалът между думите не е празна област, а знак - и има повече от един тип знак за интервал. Един знак за интервал, често използван в уеб страниците, който TRIM() няма да премахне, е непрекъсваемият интервал.

Ако сте импортирали или копирали данни от уеб страници, може да не успеете да премахнете допълнителните интервали с функцията TRIM(), ако са създадени от неразривни интервали.

Неразделящи се и редовни интервали

Image
Image

Интервалите са знаци и всеки знак е обозначен със своята ASCII кодова стойност. ASCII означава американски стандартен код за обмен на информация - международен стандарт за текстови знаци в компютърни операционни среди, който създава един набор от кодове за 255 различни знака и символи, използвани в компютърни програми.

ASCII кодът за неразделен интервал е 160. ASCII кодът за обикновен интервал е 32.

Функцията TRIM() може да премахва само интервали, които имат ASCII код 32.

Image
Image

Различните типове стилове поддържат различни диапазони от ASCII кодове. Стандартната таблица предлага 127 възможни стойности; шрифтовете трябва да поддържат минимално ASCII карта от 127 знака, за да се считат за валидни. Но "разширените" 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 код с всеки друг.

Препоръчано: