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

Sonder- und Steuerzeichen

Forumthread: Sonder- und Steuerzeichen

Sonder- und Steuerzeichen
12.02.2019 09:25:56
Werner
Hallo,
ich bearbeite die Datenblätter für einen viersprachigen Webshop. Da diese in Excel realisiert sind, dachte ich mir, ich kreiere mir ein Übersetzungstool. Der Großteil der Daten sind nämlich nicht Sprache sondern technische Angaben.
Mein Tool liest die Daten aus dem Original aus, erstellt eine Liste aller Einträge und bereinigt doppelte Einträge. Dann gibt man bei entsprechenden Werten eine Übersetzung ein, andere lässt man frei. Jetzt werden die Daten kopiert und dabei Übersetzungen statt Originaldaten verwendet, wenn vorhanden.
Jetzt zu meinem Problem: Die Daten enthalten leider manchmal Sonderzeichen, wie etwa eine Tilde (~), ein "Klammeräffchen" (@) oder ein einzelnes Anführungszeichen ("). Scheinbar ist es bekannt, das man diese Zeichen nicht so einfach bearbeiten kann, leider habe ich aber auch noch keinen Weg gefunden, wie es trotzdem geht. Beim Schreiben der Übersetzung bekomme ich dann Laufzeitfehler.
Kennt jemand eine Lösung für dieses Problem?
Wie kann ich Daten, die solche Sonder- und Steuerzeichen enthalten, trotzdem kopieren und in ein anderes Worksheet bzw. sogar eine andere Datei schreiben?
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sonder- und Steuerzeichen
12.02.2019 09:40:43
Armin
Hallo Werner,
arbeitest Du mit VBA?
AW: Sonder- und Steuerzeichen
12.02.2019 09:45:32
Werner
Ja, ich benutze VBA für fast den ganzen Vorgang:
  • Auswahl der Quelldatei
  • Auswahl der Zieldatei
  • Auslesen der Daten
  • Übersetzen der Daten
  • usw, usf...

  • AW: Sonder- und Steuerzeichen
    12.02.2019 09:59:32
    Armin
    Hallo Werner,
    vielleicht hilft Dir dann diese Function:
    Function OhneUmlaute(ByVal sSource As String) As String
    Dim sTmp As String
    sTmp = Replace(sSource, "ä", "ae")
    sTmp = Replace(sTmp, "ä", "ae")
    sTmp = Replace(sTmp, "ö", "oe")
    sTmp = Replace(sTmp, "ü", "ue")
    sTmp = Replace(sTmp, "/", "_")
    sTmp = Replace(sTmp, "~", "")
    sTmp = Replace(sTmp, "@", "")
    sTmp = Replace(sTmp, """, "")
    OhneUmlaute = sTmp
    End Function
    

    Natürlich kannst das Ganze auch noch anpassen.
    Gruß Armin
    Anzeige
    AW: Sonder- und Steuerzeichen
    12.02.2019 11:10:32
    Werner
    Dein Vorschlag entfernt diese Sonderzeichen.
    Das hilft mir leider überhaupt nicht, da diese Zeichen Teil von technischen Daten sind (~ zeigt Wechselstrom an, " ist die Darstellung von Zoll, etc.) müssen sie natürlich auch erthalten bleiben und dürfen nicht einfach wegfallen.
    Es scheint also tatsächlich keinen Weg geben, diese zeichen anstandslos mitzukopieren, jedenfalls ist Google bis jetzt genauso ratlos wie ich.
    Anzeige
    AW: Sonder- und Steuerzeichen
    12.02.2019 11:34:40
    Karl-Heinz
    Hallo Armin,
    die von Dir angeführten Zeichen sind keine Sonderzeichen, sondern gehören zum Standardbereich der ASCII-Tabelle.
    "=ASCII-Nr 34, @=ASCII-Nr 64 und ~=ASCII_Nr 126.
    Steuerzeichen sind alle Zeichen kleiner 32 und Sonderzeichen beginnen ab ASCII-Nr 128. Dazu gehören u.a. ä,ü,ö
    Mir ist daher nicht klar, wieso die nicht ganz normal zu kopieren bzw. übernehmen sein sollen.
    Da müsstest Du vielleicht mal zeigen, wie Du Kopie bewerkstelligst. Ggf. mit hochgeladener Datei.
    viele Grüße
    Karl-Heinz
    Anzeige
    AW: Sonder- und Steuerzeichen
    12.02.2019 11:58:29
    Armin
    Hallo Werner,
    leider ist Deine Erklärung nicht zutreffend!
    Sonderzeichen beginnen bei ASCII Dez. 47 „/“
    Steuerzeichen bei ASCII Dez 31 „ ^_“
    Umlaute werden deshalb entfernt weil sie früher nicht in Filenamen und Pfade existieren durften. Evtl. auch noch aus anderen Gründen.
    Da Du jedoch kein Beispiel hoch laden willst, ok dann ist das für mich erledigt.
    Gruß Armin
    Anzeige
    AW: Sonder- und Steuerzeichen
    12.02.2019 11:29:28
    Armin
    Hallo Werner,
    leider war das ohne Deien Code zu kennen nicht ersichtlich. Das ist halt so wenn man kein Beispiel hoch läd.
    Gruß Armin
    AW: Sonder- und Steuerzeichen
    12.02.2019 14:31:15
    Werner
    Ich weiß jetzt nicht genau, warum Du so patzig wirst aber, nur zur Info, die "Erklärung" habe nicht ich gepostet, sondern jemand anders! Achte mal auf die Namen! Und nach einer Datei hat mich auch keiner gefragt bisher.
    Hochladen kann ich die Dateien nicht, sie enthalten kritische Firmendaten.
    Ich habe 2 stings definiert. Der erste liest die Daten einer Zelle aus.
    Dann wird verglichen, ob es für diesen inhalt eine Übersetzung gibt.
    Gibt es keine, wird der String an eine andere Stringvariable übergeben.
    Gibt es eine, wird statt dem Original die Übersetzung an die 2. Stringvariable übergeben.
    Dann wird der Inhalt des 2. Strings in die gleiche Zelle eines anderen Blatts geschrieben, also der Wert mit Cells(x,y)=String2 an die Zelle übergeben.
    Beinhaltet nun String2 eine Tilde, ein Anführungszeichen oder ähnliche Dinge (Umlaute sind kein Problem!) bricht das Makro mit einer Fehlermeldung ab.
    Diese Zeichen sind, laut meinen Google-Erfahrungen, Sonder- oder Steuerzeichen, die man nicht mal per Suchen und Ersetzen in Excel richtig verarbeiten kann.
    Anzeige
    Es gibt ASCII-Steuer- UND Sonderzeichen, ...
    12.02.2019 15:28:59
    Luc:-?
    …Leute,
    und auch noch sehr viel mehr in Unicode. Alle 255 ASCII-Zeichen sollten sich problemlos kopieren lassen. Ist das nicht der Fall, handelt es sich womöglich um eine Diskrepanz zwischen unterschiedlichen Verschlüsselungssystemen (zB UTF-8/-16/-32). Außerdem bietet Unicode die Möglichkeit vieler separat setzbarer diakritischer Zeichen. Ein ä ist dann kein ä, sonder ein a mit einem Trema, das wie ´, ` oder ^ separat vorangestellt wird. Es kommt also 1. darauf an, wie der Text erzeugt wurde, und 2. darauf, was das KopierPgm zu leisten vermag. Die einfache KopierMethode von Xl kann jedenfalls so ziemlich alles kopieren, nur kann manches nicht ohne geeigneten SchriftFonts dargestellt wdn - das evtl 3.Problem.
    Gruß, Luc :-?
    „Die Intelligenzmenge ist auf diesem Planeten eine Konstante, die Bevölkerung nimmt aber zu!“ Auch deshalb informieren mit …
    Anzeige
    AW: Es gibt ASCII-Steuer- UND Sonderzeichen, ...
    13.02.2019 09:05:06
    Werner
    Hallo Luc,
    es handelt sich sicher nicht um ein Font-Problem, die Daten aus dem Originalsheet auslesen funktioniert nämlich einwandfrei.
    Mach Dir einfach mal einen Spaß, öffne ein komplett neues und leeres Sheet, mach in irgendeine Zelle eine Tilde (~) und versuch dann, sie mit der "Suchen und Ersetzen"-Funktion in etwas anderes zu verändern.
    Zumindest mal mein Excel sagt, es findet den gesuchten Ausdruck nicht!
    Offensichtlich gibt es Zeichen, die Excel als etwas anderes als reinen text interpretiert, das meine ich, wenn ich von Steuer- und Sonderzeichen spreche.
    Aber egal, ich habe mich damit abgefunden dass ich das so nicht hinkriege und arbeite jetzt manuell darum herum.
    Anzeige
    AW: Es gibt ASCII-Steuer- UND Sonderzeichen, ...
    13.02.2019 09:22:57
    Daniel
    Hi
    ja klar es gibt in Excel an vielen Stellen solche Sonder- und Funktionszeichen
    die einfachsten sind noch die Jokerzeichen ? und * bei Textfunktionen.
    sehr viele dieser Sonderzeichen gibt's in der Funktion TEXT bzw im benutzerdefinerten Zahlenformat:
    ("h": Stunden, "J": eine Ziffer der Jahreszahl, ".": Zahl mit Taudsenderpunkt ausgeben)
    da es manchmal notwendig sein kann, dieses Zeichen als normales Zeichen zu verwenden und nicht als Steuerzeichen, braucht man immer auch ein Steuerzeichen, welches die Funktion hat, dem nachfolgenden Steuerzeichen sein Funktion zu nehmen, so dass es als normales Zeichen gilt.
    hier ist Excel leider nicht immer eindeutig.
    in der Textfunktion bzw im benutzerdefinerten Zahlenformat ist dieses Zeichen der Backslash "\",
    in der Menüfunktion Suchen/Ersetzen eben die Tilde "~"
    aber auch diese Zeichen lassen sich durch das entsprechende Steuerezeichen ihrer Funktion berauben:
    dh wenn du nach dem Textzeichen Tilde suchen willst, musst du eben nach "~~" suchen.
    die erste Tilde gibt an, dass das nachfolgende Zeichen als normales und nicht als Steuerzeichen interpretiert werden soll und die zweite Tilde ist dann eben dieses Zeichen.
    Ist genauso, wie wenn du bspw im Text nach dem Fragezeichen suchen willst, dann musst du auch nach "~?" suchen.
    Gruß Daniel
    Anzeige
    ;
    Anzeige

    Infobox / Tutorial

    Sonder- und Steuerzeichen in Excel effektiv bearbeiten


    Schritt-für-Schritt-Anleitung

    1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

    2. Neues Modul erstellen: Klicke mit der rechten Maustaste auf "VBAProject (DeineArbeitsmappe)", wähle "Einfügen" und dann "Modul".

    3. Code einfügen: Kopiere und füge den folgenden Code in das Modul ein:

      Function KopiereMitSteuerzeichen(ByVal sSource As String) As String
         Dim sTmp As String
         sTmp = sSource
         ' Hier kannst Du weitere Anpassungen vornehmen
         KopiereMitSteuerzeichen = sTmp
      End Function
    4. Verwendung der Funktion: Verwende die Funktion in einer Zelle, z.B. =KopiereMitSteuerzeichen(A1), um den Wert aus Zelle A1 zu kopieren, ohne dass die Steuerzeichen verloren gehen.


    Häufige Fehler und Lösungen

    • Laufzeitfehler: Wenn der Code bei der Verwendung von Sonderzeichen wie Tilde (~) oder Anführungszeichen ("") abbricht, stelle sicher, dass Du diese Zeichen im Code behandelst. Beispielsweise:

      sTmp = Replace(sTmp, "~", "")

      Entferne diese Zeile, wenn Du das Zeichen behalten möchtest.

    • Zeichen nicht gefunden: Wenn Du beim Suchen und Ersetzen von Zeichen Probleme hast, versuche es mit ~~ für Tilde oder ~" für Anführungszeichen, um Excel klarzumachen, dass diese Zeichen normal behandelt werden sollen.


    Alternative Methoden

    • Suchen und Ersetzen: Nutze die Funktion "Suchen und Ersetzen" (Strg + H) und füge die Tilde doppelt ein (~~), um die Tilde als normales Zeichen zu behandeln.

    • Formeln: Verwende die Funktion TEXT, um spezielle Zeichen darzustellen, wenn Du sie in der Ausgabe benötigst. Beispiel:

      =TEXT(A1; "0.00") & " ~"

    Praktische Beispiele

    1. Daten bereinigen: Wenn Du eine Liste mit technischen Daten hast, die Sonderzeichen enthält, kannst Du diese mit der oben genannten Funktion in VBA kopieren, ohne die Zeichen zu verlieren.

    2. Excel Steuerzeichen anzeigen: Füge in eine Zelle eine Formel ein, die ein Steuerzeichen anzeigt. Beispiel:

      ="Das Symbol für Wechselstrom ist " & KopiereMitSteuerzeichen("~")

    Tipps für Profis

    • Verwendung von Unicode: Achte darauf, dass Dein Arbeitsblatt im richtigen Format gespeichert ist (z.B. UTF-8), um sicherzustellen, dass alle Zeichen korrekt dargestellt werden.

    • Benutzerdefinierte Formate: Definiere benutzerdefinierte Zahlenformate, um bestimmte Steuerzeichen anzuzeigen, ohne dass sie ihre Funktion verlieren.


    FAQ: Häufige Fragen

    1. Warum kann ich manche Sonderzeichen nicht bearbeiten?
    Excel hat Schwierigkeiten mit bestimmten Steuerzeichen, die nicht als reguläre Zeichen interpretiert werden. Versuche, diese Zeichen mit doppelten Tildes (~~) zu suchen.

    2. Wie kann ich sicherstellen, dass meine VBA-Funktion auch bei Sonderzeichen funktioniert?
    Stelle sicher, dass Du alle relevanten Zeichen in Deiner Funktion berücksichtigst und keine Zeilen hast, die diese Zeichen entfernen.

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Entdecke mehr
    Finde genau, was du suchst

    Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

    Suche nach den besten Antworten
    Unsere beliebtesten Threads

    Entdecke unsere meistgeklickten Beiträge in der Google Suche

    Top 100 Threads jetzt ansehen
    Anzeige