Office: SaveAs CSV-Trennzeichen Ländereinstellungen

Helfe beim Thema SaveAs CSV-Trennzeichen Ländereinstellungen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, wie könnte es anders sein, ich habe ein Problem. Nach ca drei Stunden suche im Netz und ausprobieren, habe ich immer noch keine... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von User, 30. März 2009.

  1. SaveAs CSV-Trennzeichen Ländereinstellungen


    Hallo zusammen,

    wie könnte es anders sein, ich habe ein Problem. Nach ca drei Stunden suche im Netz und ausprobieren, habe ich immer noch keine brauchbare Lösung gefunden.

    Nun aber zum eigentlichen Problem:

    Ich habe per VBA ein Tabellenblatt generiert, welches in eine neue Datei geschrieben wird. Diese neue Datei soll als ASCII gespeichert werden, also mit Trennzeiche Semikolon ";" und die Dezimalstellen bei den Beträgen mit Komma. In diversen Beiträgen wird darauf hingewiesen, dass die localen Ländereinstellungen mit dem Parameter "Local:= True" übernommen werden sollen und anschließend die CSV-Datei richtig erstellt wird. Mein Quellcode bis hier hin lautet:

    ActiveWorkbook.SaveAs Filename:="Ascii_PN_01_" & lfd_Jahr & ".txt", _
    FileFormat:=xlCSV, CreateBackup:=False, local:=True

    Doch leider funktioniert das nicht! Wie kann ich die einzelnen Parameter für die Trennzeichen und Dezimalkennung festlegen? Wie muss der Quellcode ergänzt werden??? Wie kann ich die ApplicationInternationel-Konstanten beeinflussen und/oder ändern?

    Vielen Dank schon im Voraus.
    Grüßle, Epeios.

    :)
     
  2. Hallo Epeios,

    Du kannst die Einstellungen per VBA beeinflussen :

    Application.UseSystemSeparators = False 'Nicht die Einstellungen der Systemsteuerung übernehmen
    Application.DecimalSeparator="," 'Dezimaltrennzeichen festlegen
    Application.ThousandsSeparator="." 'Tausenderpunkt festlegen


    Mit dem von Dir erwähnten Parameter Local:=TRUE der .SaveAs-Methode wird dann das Listentrennzeichen der Systemsteuerung (in der deutschen Version also das Semikolon) verwendet !

    Zum Abfragen der AKTUELLEN WERTE der Systemsteuerung diene folgende Anweisungen :
    MsgBox Application.International(xlDecimalSeparator) = "," 'Dezimaltrennzeichen
    MsgBox Application.International(xlDecimalSeparator)
    MsgBox Application.International(xlListSeparator) = ";" 'Listentrennzeichen
    MsgBox Application.International(xlAlternateArraySeparator) 'Alternatives Listentrennzeichen (Wenn Listentrennzeichen und Dezimalzeichen identisch sind !)


    Ich hoffe, das hilft Dir ein wenig weiter....
     
    NoNet, 1. April 2009
    #2
  3. Hallo NoNet,

    danke für Deinen Beitrag. Leider haben diese Ausführungen bei mir zu keinem besseren Ergebnis geführt. Die Einstellung der Application.International werden in der Msg-Box richtig wieder gegeben, leider aber nicht beim schreiben in die zu speichernde Datei. Diese sieht nach dem Durchlauf des Macros unverändert aus (US-Ländereinstellungen) also als Listentrennzeichen das Komma und als Dezimaltrennzeichen der Punkt. Ebenfalls wird das Datum noch falsch dargestellt. Hier erfolgt die Trennung mit "/" und nicht mit "." .... Was kann ich noch tun? Die Systemeinstellungen sind richtig, werden aber nicht übernommen...

    Vielen Dank schon mal im Voraus.

    Grüßle, Epeios.
     
  4. SaveAs CSV-Trennzeichen Ländereinstellungen

    Hi,

    geht mir genauso beim Speichern.
    Habe aber den Grund und auch einen Workaround gefunden.

    'Local' scheint nur bei 'SaveAs' mit 'Workbook' beachtet zu werden. Beim Objekt 'Worksheet' wird bei mir auch jedesmal das englische Format geschrieben.

    Workaround: mit 'Workbook' speichern und vorher das jeweilige Blatt aktivieren. Ist zwar nicht schön, funktioniert aber.

    Komisch ist, dass ich die Erklärung beim meinem 10-Minuten-Googlen nicht gefunden habe. Sind nur wir beide betroffen??
     
  5. Sorry, dass ich diesen alten Mist noch einmal aufmache, aber bei mir funktioniert es einfach nicht (Office 2010)

    Mein Code lautet:

    Sub CSV_speichern()

    MsgBox Application.International(xlListSeparator) = ";"

    'speichern als csv
    Sheets("CSV").Select
    Sheets("CSV").Copy
    ActiveWorkbook.SaveAs Filename:= _
    Cells(1, 10).Value, _
    FileFormat:=xlCSV, local:=True

    Range("j1").Select
    Selection.Clear
    ActiveWorkbook.Save
    ActiveWindow.Close
    End Sub

    In der Zelle J1 steht der Dateiname mit Pfad (ohne *.csv)

    Die Messagebox sagt, dass ";" WAHR ist.

    Hat jemand da mal eine konstruktive Idee ?

    VG


    Blue Raven
     
    Blue Raven, 12. Dezember 2013
    #5
Thema:

SaveAs CSV-Trennzeichen Ländereinstellungen

Die Seite wird geladen...
  1. SaveAs CSV-Trennzeichen Ländereinstellungen - Similar Threads - SaveAs CSV Trennzeichen

  2. CSV in Outlook

    in Microsoft Excel Hilfe
    CSV in Outlook: Wie kann ich die Uhrzeit eines Termins über die CSV-Datei in Outlook importieren?
  3. CSV Verbindung ergänzt neue Spalten nicht

    in Microsoft Excel Hilfe
    CSV Verbindung ergänzt neue Spalten nicht: Hallo zusammen Ich habe eine csv-Datei über "Daten abrufen - Aus Datei - Aus Text/CSV" in mein Excelfile verknüpft. Nun wird diese csv-Datei regelmässig überschrieben, die Werte aktualisiert und...
  4. Makros für csv-Export mit Anführungszeichen für ausgewählte Splaten

    in Microsoft Excel Hilfe
    Makros für csv-Export mit Anführungszeichen für ausgewählte Splaten: Hallo liebe Forengemeinde, ich habe folgendes Problem: Ich muss eine csv-Datei bearbeiten und anschließend wieder als csv-Datei speichern. In der Originaldatei sind einige Spalteninhalte in in...
  5. CSV-Import mit seeehr langen Zahlen

    in Microsoft Excel Hilfe
    CSV-Import mit seeehr langen Zahlen: Moin ihr Lieben, ich habe von einem Kunden eine CSV-Datei erhalten mit 19-stelligen Zahlen-Codes, teils auch mit führenden Nullen, die z.B. so aussehen: 0001234567890123456 0012345678901234567...
  6. Ordner suchen und als Pfad für SaveAs nutzen

    in Microsoft Excel Hilfe
    Ordner suchen und als Pfad für SaveAs nutzen: Hallo zusammen, die aktive Excel Datei (erzeugt aus einer Vorlage) soll nach Maskeneingabe per Script gleich gespeichert werden können. Das mache ich aktuell mit Code:...
  7. SaveAs

    in Microsoft Excel Hilfe
    SaveAs: Hallo zusammen, Ich habe beim Versuch ein Workbook mit der SaveAs Anweisung zu speichern, den Laufzeitfehler 1004 bekommen. Diesen habe ich mithilfe von Recherche wegbekommen - ich hatte die...
  8. Laufzeitfehler 1004 die Methode saveas für das objekt _Workbook ist fehlgeschlagen

    in Microsoft Excel Hilfe
    Laufzeitfehler 1004 die Methode saveas für das objekt _Workbook ist fehlgeschlagen: Hallo zusammen, so langsam verzweifle ich. Ein seit Jahren in Excel2003 bewährtes Makro läuft nun in Excel2010 nicht mehr. Und das an einer scheinbar einfachen Stelle: Beim Abspeichern der Datei....
  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