Microsoft Excel

Herbers Excel/VBA-Archiv

Hartnäckiges Leerzeichen beim GLÄTTEN


Betrifft: Hartnäckiges Leerzeichen beim GLÄTTEN von: Klexy
Geschrieben am: 01.03.2018 17:49:24

Dies ist keine Frage, weil ich die Lösung schon herausgefunden habe, aber durch die Veröffentlichung hier kann ich vielleicht das eine oder andere graue Haar verhindern. Ihr wollt ja nicht alle so aussehen wie ich.

Problem:
- Import von Zahlen von sonstwoher
- Zellen mit Zahlen enthalten unnötige Leerzeichen (davor oder danach)
- normalerweise kein Problem mit GLÄTTEN
- die Leerzeichen lassen sich aber durch GLÄTTEN nicht beeindrucken (auch nicht durch SÄUBERN)
- die Zahlen können nicht weiterverarbeitet werden :-(

Erklärung:
Es sind keine normalen Leerzeichen, sondern sog. "geschützte" Leerzeichen. Diejenigen, die in Word den Zeilenumbruch zwischen zwei Wörtern verhindern und in Word bei eingeschaltetem wie Grad-Zeichen (°) aussehen.
In Excel kann man sie aber optisch nicht von normalen Leerzeichen unterscheiden und verzweifelt aweng.

Lösung:
Vor dem GLÄTTEN muss man die geschützten Leerzeichen in normale Leerzeichen WECHSELN
=GLÄTTEN(WECHSELN(A1;" ";" "))
Das erste Leerzeichen in der WECHSELN-Formel wird mit Alt+255 (auf dem Ziffernblock!) erzeugt, das zweite normal mit der Leertaste.
Alternativ: =GLÄTTEN(WECHSELN(C2;ZEICHEN(160);ZEICHEN(32)))
Jetzt lassen sich die Zahlen weiterverarbeiten.

In der angehängten Datei ist ein Beispiel für den Unterschied zwischen dem normalen Leerzeichen (Zeichen 32) und dem geschützten Leerzeichen (Zeichen 160) und ein Muster zum Rumspielen.

https://www.herber.de/bbs/user/120146.xls

  

Betrifft: AW: ist nicht das ZEICHEN 255 sondern 160 owT von: ... neopa C
Geschrieben am: 01.03.2018 18:46:50

Gruß Werner
.. , - ...


  

Betrifft: nein - er hat Recht von: WF
Geschrieben am: 01.03.2018 19:05:03

Hi,

gib in A1 auf dem Ziffernblock ein:
Alt255

schreib in B1:
=CODE(A1)
da hast Du Deine 160

WF


  

Betrifft: AW: Einspruch, Euer Ehren! von: Klexy
Geschrieben am: 01.03.2018 19:15:39

Hi Werner,

die ZEICHEN (bzw. CODE) sind nur zwischen 32 und 126 identisch mit den Alt+?.
Und ChrW(?) und Chr(?) sind auch wieder anders.
Und Alt+???? auch wieder.
Und Excel deutet das wieder anders als Word und andere Applikationen wieder anders.

Teilweise nur wenige Zeichen, aber das reicht schon, um im Falle eines Falles ärgerlich zu sein.

Frag mich nicht...
Eines Tages untersuch ich das mal.


  

Betrifft: AW: sorry, ich wollte ZEICHEN 0160 schreiben ... von: ... neopa C
Geschrieben am: 01.03.2018 19:48:55

Hallo Klexy,

... dieses kann durch Eingabe mit Alt+0160 erzeugt werden, aber wird von CODE() wie das Zeichen 255 nur als Zeichen 160 erkannt.

Gruß Werner
.. , - ...


  

Betrifft: =CODE(TEIL(C2;1;1)) als Erklärung owT von: Matthias L
Geschrieben am: 01.03.2018 18:54:12




Beiträge aus dem Excel-Forum zum Thema "Hartnäckiges Leerzeichen beim GLÄTTEN"