Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Excel pseudoleerzeichen??

Forumthread: Excel pseudoleerzeichen?

Excel pseudoleerzeichen?
Markus
Hallo ich quäle mich jetzt seit geraumer zeit damit und finde keine lösung.
ich importieren eine tabelle(aus html text) und habe eine zahlenkolone die ich sortieren will.
nun sind da aber zahlen bei die nicht als solche erkannt werden.
glätten klappt nicht.
wenn man in die zelle guckt kann man oben in der bearbeitungsleiste noch ein zeichen hinter die zahl gehen. es sieht aus wie ein leerzeichen, wenn ichs lösche verschwindet aber die letzte stelle der zahl und die lücke bleibt....
ich bin total ratlos. ich würd ja auch ne tabelle als beispiel reinstellen, weiß nur nicht.
über trim (vba) bin ich auch nicht weitergekommen...
wenn ihr sowas schon hatte sagt mir bitte die lösung, ich dreh durch...
gruß
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Excel pseudoleerzeichen?
21.07.2009 23:39:23
Jens
Hallo Markus
Lad doch mal eine Beispiel-Datei hoch, in der das Problem vorkommt.
Gruß aus dem Sauerland
Jens
AW: Excel pseudoleerzeichen?
21.07.2009 23:51:11
BoskoBiati
Hallo Markus,
hast Du es schon mal mit Säubern() versucht?
AW: Excel pseudoleerzeichen?
22.07.2009 18:46:28
Markus
Habe ein nun doch endlich was gefunden das hilft.
Anbei trotzdem die Bsp.Datei und das makro ...
Datei:
https://www.herber.de/bbs/user/63359.xlsx
Makro:
Sub SonderZeichenLoeschen()
Dim zaehler As Long
With ActiveSheet
For zaehler = 2 To .Range("A" & Rows.Count).End(xlUp).Row
.Range("A" & zaehler) = Sumtext(.Range("A" & zaehler))
Next zaehler
End With
End Sub
danke allen.
markus
Anzeige
AW: Excel pseudoleerzeichen?
22.07.2009 08:22:16
robert
hi,
probier mal das,es könnte das Chr160 sein.
gruß
robert
Sub LeerzeichenRaus()
Dim Bereich As Range
Dim Zelle As Range
Set Bereich = Selection
With Bereich
.Replace What:=" ", Replacement:="", _
LookAt:=xlPart, MatchCase:=True
.Replace What:=Chr(160), Replacement:="", _
LookAt:=xlPart, MatchCase:=True
For Each Zelle In Bereich
Zelle.Value = Zelle.Value * 1
Next Zelle
End With
End Sub

Anzeige
AW: Excel pseudoleerzeichen?
22.07.2009 18:47:40
Markus
Säubern() funktioniert auch!
Kannte ich noch nicht...
kann nicht sein....
23.07.2009 07:48:27
robert
hi,
hast dui es probiert ?
in deiner datei ändert sich nichts mit Säubern()
habe mein makro laufen lassen-das wandelt den text in zahlen um
das problem mit dem ASCI zeichen 160 war schon ein paarmal im forum..
sieht aus wie ein normales leerzeichen
probier mein makro und bitte um rückmeldung
gruß
robert
Anzeige
FYI : CHR(160) = "Geschütztes Leerzeichen"
23.07.2009 16:48:38
NoNet
Hallo @alle,
nur rein informativ : Das ASCII-Zeichen 160 (CHR(160)) nennt sich in WORD "geschütztes Leerzeichen" (Eingabe : Strg+Shift+Leerzeichen) und verhindert, dass Sätze oder feststehende Begriffe an einer "falschen" (bzw. nicht erwünschten) Stelle getrennt werden. Das geschützte Leerzeichen wird in Word (bei eingeblendeten "nichtdruckbaren Zeichen") als ° dargestellt.
Ein Beispiel wäre New°York : Diese stadt besteht aus 2 einzelnen Worten, eine Zeilentrennung zwischen "New" und "York" ist allerdings meist unerwünscht, so dass man hier eben nicht "New York" sondern "New°York" schreibt !
In HTML, ist es das   (= "non breaking space").
Gruß, NoNet
Anzeige
AW: FYI : CHR(160) = "Geschütztes Leerzeichen"
23.07.2009 18:50:53
robert
hi NoNet,
ich bin immer wieder erstaunt über deine kommentare-einfach super...
aber-wie stehst du zur lösung ?
mit Säubern() ?
gruß
robert
;
Anzeige

Infobox / Tutorial

Excel Pseudoleerzeichen Entfernen und Beheben


Schritt-für-Schritt-Anleitung

  1. Daten importieren: Stelle sicher, dass deine Tabelle, die aus HTML importiert wurde, in Excel geöffnet ist.

  2. Zelle überprüfen: Klicke auf eine Zelle mit einer Zahl, die nicht korrekt erkannt wird. Überprüfe die Bearbeitungsleiste, ob nach der Zahl ein unsichtbares Zeichen (z. B. ein geschütztes Leerzeichen) vorhanden ist.

  3. Verwendung von Säubern(): Nutze die Funktion =Säubern(A1) (ersetze A1 durch die entsprechende Zelle), um unsichtbare Zeichen zu entfernen.

  4. Makro zur Entfernung von Leerzeichen: Wenn Säubern() nicht funktioniert, kannst du ein VBA-Makro verwenden. Füge den folgenden Code in ein Modul ein:

    Sub LeerzeichenRaus()
       Dim Bereich As Range
       Dim Zelle As Range
       Set Bereich = Selection
       With Bereich
           .Replace What:=" ", Replacement:="", LookAt:=xlPart, MatchCase:=True
           .Replace What:=Chr(160), Replacement:="", LookAt:=xlPart, MatchCase:=True
           For Each Zelle In Bereich
               Zelle.Value = Zelle.Value * 1
           Next Zelle
       End With
    End Sub
  5. Zahlen umwandeln: Markiere den Bereich und führe das Makro aus, um die Textwerte in Zahlen umzuwandeln.


Häufige Fehler und Lösungen

  • Fehler: Säubern() entfernt keine Zeichen.

    • Lösung: Überprüfe, ob es sich um ein geschütztes Leerzeichen handelt (ASCII 160). Verwende das Makro zur gezielten Entfernung.
  • Fehler: Nach der Verwendung von Säubern() bleibt das Problem bestehen.

    • Lösung: Stelle sicher, dass du das richtige Zeichen entfernst. Das geschützte Leerzeichen wird oft nicht erkannt.

Alternative Methoden

  • Verwendung von Excel-Funktionen: Eine Kombination aus TRIM() und SUBSTITUTE() kann helfen, Leerzeichen zu entfernen. Zum Beispiel:

    =TRIM(SUBSTITUTE(A1, CHAR(160), ""))
  • Direkte Bearbeitung: Manchmal kann es hilfreich sein, die Zellen manuell zu überprüfen und Leerzeichen direkt zu löschen.


Praktische Beispiele

  • Beispiel 1: Du importierst eine Liste von Städten, aber "New York" wird als "New York" (mit geschütztem Leerzeichen) angezeigt. Verwende das oben genannte Makro, um das geschützte Leerzeichen zu entfernen.

  • Beispiel 2: Du hast eine Preisliste, in der einige Preise nicht als Zahlen erkannt werden. Wende Säubern() und das Makro an, um die Daten korrekt zu formatieren.


Tipps für Profis

  • Versteckte Zeichen erkennen: Aktiviere die Anzeige nicht druckbarer Zeichen in Word, um geschützte Leerzeichen zu erkennen.
  • Regelmäßige Überprüfung: Überprüfe regelmäßig deine Daten auf unsichtbare Leerzeichen, insbesondere nach dem Import aus HTML.
  • VBA anpassen: Du kannst das Makro anpassen, um auch andere unsichtbare Zeichen zu entfernen, indem du weitere Replace-Befehle hinzufügst.

FAQ: Häufige Fragen

1. Was ist ein geschütztes Leerzeichen in Excel?
Ein geschütztes Leerzeichen (ASCII 160) ist ein Zeichen, das in Word verwendet wird, um Zeilenumbrüche an unerwünschten Stellen zu verhindern. In Excel kann es dazu führen, dass Zahlen nicht korrekt erkannt werden.

2. Wie kann ich geschützte Leerzeichen in Excel entfernen?
Du kannst entweder die Funktion Säubern() verwenden oder ein VBA-Makro, das gezielt das Zeichen Chr(160) entfernt.

3. Gibt es eine Möglichkeit, geschützte Leerzeichen automatisch zu finden?
Ja, du kannst das Makro verwenden, das wir in der Schritt-für-Schritt-Anleitung angegeben haben, um den gesamten ausgewählten Bereich auf geschützte Leerzeichen zu überprüfen und sie zu entfernen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige