Co dělat, když funkce TRIM aplikace Excel nefunguje

Obsah:

Co dělat, když funkce TRIM aplikace Excel nefunguje
Co dělat, když funkce TRIM aplikace Excel nefunguje
Anonim

Když zkopírujete nebo importujete textová data do listu aplikace Excel, tabulka příležitostně zachová kromě obsahu, který jste vložili, další mezery. Normálně může funkce TRIM() sama o sobě odstranit tyto nežádoucí mezery, ať už se vyskytují mezi slovy nebo na začátku či konci textového řetězce. V určitých situacích však TRIM() nemůže tuto práci provést.

Na počítači není mezera mezi slovy prázdná oblast, ale znak – a existuje více než jeden typ mezery. Jeden znak mezery běžně používaný na webových stránkách, který TRIM() neodstraní, je mezera.

Pokud jste importovali nebo zkopírovali data z webových stránek, možná nebudete moci odstranit nadbytečné mezery pomocí funkce TRIM(), pokud jsou vytvořeny nerozdělitelnými mezerami.

Nerozbitné a běžné prostory

Image
Image

Mezery jsou znaky a na každý znak se odkazuje svou hodnotou kódu ASCII. ASCII je zkratka pro American Standard Code for Information Interchange - mezinárodní standard pro textové znaky v počítačových operačních prostředích, který vytváří jednu sadu kódů pro 255 různých znaků a symbolů používaných v počítačových programech.

ASCII kód pro pevnou mezeru je 160. ASCII kód pro běžnou mezeru je 32.

Funkce TRIM() může odstranit pouze mezery, které mají ASCII kód 32.

Image
Image

Různé typy písma podporují různé rozsahy kódů ASCII. Standardní tabulka nabízí 127 možných hodnot; Aby byly řezy považovány za platné, musí minimálně podporovat 127znakovou ASCII mapu. Ale "rozšířené" znaky ASCII, nazývané dalšími kódy, často přidávají další znaky do vašich oblíbených písem. Ve skutečnosti je nezlomitelná mezera sama o sobě rozšířeným znakem ASCII, zatímco standardní mezera je … no, standardní.

Odstranění neprolomitelných mezer

Odstraňte pevné mezery z řádku textu pomocí funkcí TRIM(), SUBSTITUTE() a CHAR().

Vzhledem k tomu, že funkce SUBSTITUTE() a CHAR() jsou vnořeny do funkce TRIM(), musí být vzorec zadán do listu, nikoli pomocí dialogových oken funkcí k zadávání argumentů.

Vzorec za předpokladu, že data s pevnými mezerami jsou v buňce A1, je:

Jak funguje vzorec

Každá vnořená funkce provádí konkrétní úkol:

  • Funkce CHAR stanoví příslušné kódy ASCII pro dvě různé mezery do vzorce - 160 a 32
  • Funkce SUBSTITUTE nahradí nebo nahradí všechny nerozdělitelné mezery mezi slovy normálními mezerami
  • Funkce TRIM odstraňuje nadbytečné pravidelné mezery mezi slovy, takže příkaz se v listu objeví normálně

Vzhledem k logice pořadí operací vzorců Excelu vzorec volá funkci SUBSTITUTE() a říká jí, aby nahradila každý výskyt CHAR(160) – pevné mezery – standardní mezerou CHAR (32), obsažené v buňce A1. Poté funkce TRIM() odstraní standardní mezery ze substituovaného řetězce.

Úvahy

Pokud TRIM() nemůže provést svou práci, můžete mít jiné problémy než pevné mezery, zejména pokud pracujete s původním zdrojovým materiálem vykresleným v HTML. Když materiál vložíte do Excelu, vložte jej jako prostý text, abyste z řetězce odstranili formátování pozadí a odstranili speciální formátování, jako jsou znaky, které jsou vykresleny jako bílá na bílé – což vypadá jako mezera, ale není. Zkontrolujte také vložené karty, které lze nahradit pomocí stejného vzorce jako výše, ale nahrazením kódu ASCII 160 9.

SUBSTITUTE() je užitečné pro nahrazení jakéhokoli kódu ASCII jakýmkoli jiným.

Doporučuje: