Problem mit Trim, da Leerstelle keine Leerstelle

Hallo,

ich habe einen Text in Excel-Zellen, bei dem ich mit VBA ein bestimmtes Wort suche und die Restworte der gleichen Zeile auf ein anderes Tabellenblatt übertrage. Eigentlich ganz einfach, aber:

das Suchwort ist „North German“
in der Excel-Zelle steht: "North German "

Das Leerzeichen am Ende habe ich mit Trim(…) beseitigt, das funktioniert aber nicht. Mit Notepad++ habe ich diese „Leerstelle“ in Hex umgewandelt und finde:

North GermanC2A0

Ich könnte mit left(…) die Zeichen rechts abschneiden, würde aber gern wissen, was das C2A0 am Wortende für einen Sinn hat.

Gruß
Pauli

Hallo,

Hallo Pauli,

ich habe einen Text in Excel-Zellen, bei dem ich mit VBA ein
bestimmtes Wort suche und die Restworte der gleichen Zeile auf
ein anderes Tabellenblatt übertrage.

Wo kommt denn der Ursprungstext her? Vielleicht irgendwo aus Asien?

das Suchwort ist „North German“
in der Excel-Zelle steht: "North German "

Das Leerzeichen am Ende habe ich mit Trim(…) beseitigt, das
funktioniert aber nicht. Mit Notepad++ habe ich diese
„Leerstelle“ in Hex umgewandelt und finde:

North GermanC2A0

Wenn das C2A0 wikrlich ein Zeichen ist, dann müsste es Unicode sein, dann wäre es 슠
Sieht nach irgendeinem asiatischen Zeichen aus.
Ihch kenne Notepad++ nicht. Stellt der die 2 Bytes von Unicode-Zeichen in der richtigen Reihnefolge dar? Manchmal gibt’s ja auch sowas wie Byte-Swap. Dann wäre das evtl. A0C2, das wäre dann Unicode ꃂ
Das bringt uns aber auch nicht weiter.
Oder sind es vielleicht zwei ASCII-Zeichen? Dann wären es ASCII 194 und 160, also  und eine nicht darstellbares Zeichen.

Lass dir doch mal mit Len und LenB die Länge des Strings anzeigen. Gibt’s da Unterschiede? Wenn ja, ist da wirklich irgendwas mit Unicode.

Gruß
Pauli

Gruß, Andreas

Grüezi Pauli

das Suchwort ist „North German“
in der Excel-Zelle steht: "North German "

Das Leerzeichen am Ende habe ich mit Trim(…) beseitigt, das
funktioniert aber nicht.

Markiere dieses einzelne Zeichen und kopiere es in die Zwischenablage.

Drücke dann STRG+H und ersetze dieses Zeichen durch nix, dann sind sie alle weg.
Wenn Du den Makro-Recorder dabei mitlaufen lässt, hast Du auch verwertbaren Code, den Du verwenden kannst.

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hallo,

danke für die Hinweise. Auf die Idee mit dem anderen Code bin ich nicht gekommen. Der Text ist eine Adressliste eines Vereins aus USA. Hinter jedem Eintrag einer Zelle steht dieses Zeichen und „sieht aus“ wie ein Leerzeichen.

Ich werde noch etwas forschen, aber das Problem ist mit den „left(string…)“ gelöst, da der Text, den ich suche, immer der gleiche ist.

Gruß
Pauli