Office: (Office 2016) Sonderzeichen per VBA / SQL ersetzen

Helfe beim Thema Sonderzeichen per VBA / SQL ersetzen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich müsste Sonderzeichen, z.B. ⅛ per SQL ersetzen. Ich schaffe es aber nicht im VBA Code das Sonderzeichen zu "beschreiben". Aus ⅛... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Klaus S. aus B., 8. März 2017.

  1. Sonderzeichen per VBA / SQL ersetzen


    Hallo zusammen,

    ich müsste Sonderzeichen, z.B. ⅛ per SQL ersetzen.
    Ich schaffe es aber nicht im VBA Code das Sonderzeichen zu "beschreiben".

    Aus ⅛ wird beim Einfügen ¨û *eek.gif*
    Aber damit wird das Sonderzeichen nicht ersetzt.

    Kann ich das über einen CHR Code beschreiben? Und wenn ja wo finde ich diese?

    Gruß
    Klaus

    :)
     
    Klaus S. aus B., 8. März 2017
    #1
  2. Versuche es mit Replace(DeinText, Chr$(&H215B), "1/8")
    Im Programm charmap.exe findest Du die Hex-Codes.
     
    Nouba, 9. März 2017
    #2
  3. Hallo Nouba,

    vielen Dank.
    Aber ein paar Fragen bleiben:
    • das übliche mit den Anführungszeichen: in einer RunSQl Anweisung gibt "1/8" natürlich einen Fehler. Wie setze ich hier die Anführungszeichen richtig?
    • ich bekomme einen Fehler "Ungültiger Prozeduraufruf oder ungültiges Argument" ???
    • wo oder wie finde ich eine Liste mit diesen Codes?

    Gruß
    KLaus
     
    Klaus S. aus B., 9. März 2017
    #3
  4. Sonderzeichen per VBA / SQL ersetzen

    ...sorry, den Teil mit Charmap.exe hatte ich überlesen.
     
    Klaus S. aus B., 9. März 2017
    #4
  5. Hallo
    ich habe noch eine Frage
    wie kommt das Zeichen " ⅛ " in den string ?
    welche Schriftart hast Du gewählt ?

    bist Du schon weiter gekommen ?
     
    Lanz Rudolf, 10. März 2017
    #5
  6. Hallo Rudolf,

    Sorry, war im Urlaub. *wink.gif*

    die Sonderzeichen kommen über einen Export aus einem Redaktionssystem in den String. Es wird aus dem System eine Exceldatei .xlsx erzeugt.

    Ich benötige aber eine .csv Datei zur Nutzung in einem anderen System.

    Ich muss einige Sonderzeichen ersetzen. Z.B. das Anführungszeichen war ein Problem für das folgende System.

    Die Exceldatei hat die Standardschriftart "Calibri".

    ...weiter gekommen bin ich noch nicht, ich habe immer noch die Probleme mit der Fehlermeldung und den Anführungszeichen im SQL String.

    Gruß
    KLaus
     
    Klaus S. aus B., 19. März 2017
    #6
  7. Hallo,
    wie wäre es, wenn Du die Codes zu Deinen Versuchen zeigen würdest ?
    Wie sonst, soll man da Fehler suchen/finden ?
    Deine Beschreibung ist da wenig hilfreich.
     
    gpswanderer, 19. März 2017
    #7
  8. Sonderzeichen per VBA / SQL ersetzen

    Die Schriftart ist völlig wurscht. Du scheinst eher ein Problem mit Codepages als mit Ein Achtel zu haben. *frown.gif* Ein guter Editor (wie z. Bsp. Notepad++) zeigt die Codierung der Originaldatei automatisch an, falls Du sie nicht kennen solltest. Dann kannst Du beim Importieren in Excel (Band: Daten/Aus Text) im Assitenten den Dateiursprung oder in Access im Import-Assistenten unter Weitere... die richtige Einstellung für die Codepage vornehmen.
     
  9. Hallo zusammen,

    ok, ich versuche spezifischer zu werden.
    Da habe mich mich wohl unklar ausgedrückt, sorry.

    Also nochmal ganz klar formuliert, wo mein Problem liegt:
    • ich importiere eine Excel-Liste, die Sonderzeichen enthält. Das funktioniert, die Access Tabelle zeigt die Sonderzeichen korrekt an.
    • vor dem Export als .csv Datei will ich die Sonderzeichen, die dem Programm, das mit der CVS Datei arbeiten soll, Schwierigkeiten macht, austauschen.
    • diesen Austausch versuche ich mit dem oben gezeigt Code
    • wenn ich die Sonderzeichen nicht austausche, kann ich natürlich in Excel die CSV Datei (unter Verwendung der richtigen Codierung, etc.) korrekt importieren (mit Sonderzeichen). Das hilft mir nur leider nicht, weil ich auf das Programm, mit dem ich die Datei später verwendet muss, kann ich nicht beeinflussen.

    Bisher bin ich schon gescheitert, in einer Abfrage das Sonderzeichen zu finden (mit einem Hexwert). Das ist mir mittlerweile gelungen mittels:

    Code:
    Es gelingt mir aber nicht das in VBA in einen lauffähigen Code umzuwandeln.

    Im VBA Code habe ich es wie folgt versucht:

    Code:
    Das gibt den Laufzeitfehler "13" Typen unverträglich.

    Auch mein Versuch den Code mit Variablen zu beschreiben funktioniert nicht.

    Code:
    gibt eine Fehlermeldung.
    ???

    Ich denke, es liegt mal wieder an den Hochkommas. Aber das gelingt mir irgendwie nie korrekt. Hat da jemand eine Regel/Faustformel?

    Gruß
    Klaus
     
    Klaus S. aus B., 20. März 2017
    #9
  10. Ob Dein eingeschlagener Weg der richtige ist, weiß ich nicht. Letztendlich kann man ja auch Exporte mit verschiedener Codierung erzeugen.

    Die Abfrage würde ich als Parameterabfrage gestalten, um allen Formatierungsproblemen auszuweichen. Code:
     
  11. Hallo Nouba,

    vielen Dank.

    Leider bekomme ich eine Fehlermeldung: "Verwendung von Null unzulässig"

    Die Idee mit der Parameterabfrage finde ich Super!

    Was mir ein Export mit "verschiedener Codierung" bringen soll, versteh ich aber nicht? Auch wenn ich aus Excel heraus die CSV erstelle (...alle möglichen Codierungen schon versucht) liest das Zielprogramm die Sonderzeichen falsch aus. Um den Sinn nicht zu verlieren muss ich die Sonderzeichen in "Lautschrift" bzw. normale Zeichen umwandeln.

    Gruß
    Klaus
     
    Klaus S. aus B., 20. März 2017
    #11
  12. Darf man den Namen des Zielprogramms und den gewünschten Handlungsablauf erfahren? Welche Rolle spielt Excel dabei?

    Vielleicht machst Du zwei Abfragen aus der Geschichte und schließt jeweils zusätzlich im Kriterium mit F5 Is Not Null bzw. mit F6 Is Not Null mögliche Nullwerte aus.
     
  13. Sonderzeichen per VBA / SQL ersetzen

    Hallo Nouba,

    das Zielprogramm ist eine Fernwartungssoftware. Diese hat eine Erweiterung CSV Ersatzteillisten einzulesen.
    An diesem Tool lässt sich (ohne große Kosten) nichts drehen.

    Excel daher, dass das Redaktionssystem nur in dieses Format exportieren kann.

    Ersatzteillisten enthalten zum Beispiel Gewindeangaben G⅛"
    Wenn das ⅛ und das " (für Zoll/Inch) nicht dargestellt werden, ist die Aussagekraft gleich 0. So kommen sie leider im Readktionssystem vor und deshalb suche ich eine Lösung sie zu "übersetzen".

    Zur Fehlersuche habe ich:
    • den Code "heruntergstrippt" und nur in F6 gesucht
    • die Exceldatei reduziert auf wenige Zeilen, nur ein Sonderzeichen, keine leeren Zellen für F6
    • den Suchstring auf "G" geändert

    Code:
    Trotzdem bekomme ich die Fehlermeldung "Datentypenkonflikt in Kriterienausdruck". Und bei .Execute dbFailOnError = 128

    ???

    Gruß
    Klaus

    PS: Kann es sein, dass Du einen Dreher in deine Update Definition hast? Bei Set F5 müsste es doch auch Replace(F6,... heißen und nicht F5, oder?
     
    Klaus S. aus B., 20. März 2017
    #13
  14. F5 und F6 habe ich verdreht und die 0 für binäre Suche in Instr führt zum Fehler im Kriterienausdruck. *frown.gif*
    Anbei ein funktionierendes Beispiel.
     
  15. Hallo Nouba,

    Super! Vielen Dank!

    Funktioniert bestens.

    Gruß
    KLaus
     
    Klaus S. aus B., 20. März 2017
    #15
Thema:

Sonderzeichen per VBA / SQL ersetzen

Die Seite wird geladen...
  1. Sonderzeichen per VBA / SQL ersetzen - Similar Threads - Sonderzeichen VBA SQL

  2. Text nach bestimmten Zeichen trennen (variabel)

    in Microsoft Excel Hilfe
    Text nach bestimmten Zeichen trennen (variabel): Hallo, ich habe eine Verständnisfrage bzw. Probleme bei der Formelfindung: Ausgangslage (als Beispiel anbei): in einer Zelle ist ein Text mit Sonderzeichen (nicht immer identisch, kann länger...
  3. Serienbrief Excel Datenquelle

    in Microsoft Word Hilfe
    Serienbrief Excel Datenquelle: Hallo zusammen, ich habe folgendes Problem: In meiner Excel Datenquelle Schreibe ich z.B. 1234567, 1234568 Name Spalte Ref Im Sereienbrief steht dann eine 0 In der alten Doc Version gab es hier...
  4. Excel Buchstaben anderer Länder korekt darstellen

    in Microsoft Excel Hilfe
    Excel Buchstaben anderer Länder korekt darstellen: Guten Tag, ich habe folgendes Problem, ich habe eine Tabelle voll Datensätze mit Namen verschiedener Länder. Die Datensätze wurden mit LibreOffice erstellt, dort wurden diese aus GoogleDocs in...
  5. Exel Sonderzeichen über VBA in Code einfügen

    in Microsoft Excel Hilfe
    Exel Sonderzeichen über VBA in Code einfügen: Für einen Stammbaum habe ich bisher über 400 Personen in Excel erfasst. Zur schnelleren Suche nach zusammenhängenden Personen werden die wesentlichen Daten in eine ListBox (ListPersonen)...
  6. Eingabeproblem nach Sonderzeichen

    in Microsoft Word Hilfe
    Eingabeproblem nach Sonderzeichen: Hallo, ich habe folgendes Problem: nach Eingabe eines Sonderzeichens in Word (Tastenkombination mit ALT) wird statt des anschließenden normal eingegebenen Zeichens, das Sonderzeichen wiederholt...
  7. Sonderzeichen finden per VBA

    in Microsoft Excel Hilfe
    Sonderzeichen finden per VBA: Liebes Forum! Ich habe ein Problem. Sonderzeichen (SZ) per VBA bei Eingabe überprüfen. In einem Tabellenblatt (Datei 1) habe ich ein Auswahlfeld (B1) mit Kurzbezeichnungen. Aus dieser Auswahl...
  8. Sonderzeichen für Gültigen Dateinamen elemeniren

    in Microsoft Excel Hilfe
    Sonderzeichen für Gültigen Dateinamen elemeniren: Hallo miteinander, in Spalte C stehen bei mir Namen mit Projekt nummern, blöderweise können Projektnummern Sonderzeichen enthalten wirklich alles,es gibt keine Richtlinie dafür leider. ich...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden