So speichern Sie mit Semikolon getrennte CSV-Datei mit VBA?

9

Vor kurzem musste ich einige Daten in eine Tabelle kopieren, VBA verwenden, um sie zu formatieren, und dann dieses Blatt in eine CSV-Datei speichern. Ich benutze den folgenden Code:

%Vor%

ws ist das Arbeitsblatt, das ich gespeichert habe.

Dies gibt mir eine kommagetrennte CSV-Datei.

Ich möchte dieses Blatt jedoch in einer durch Semikolon getrennten Datei speichern. Ich habe etwas gegoogelt und folgende Lösung gefunden:

  1. Gehen Sie zu Start & gt; Einstellungen & gt; Regions- und Sprachoptionen
  2. Klicken Sie auf die Schaltfläche Anpassen
  3. Geben Sie neben List Separator einen Semikolon (;)
  4. ein

Ich habe die obigen Schritte befolgt und meinen Code folgendermaßen geändert:

%Vor%

Aber ich habe immer noch eine kommagetrennte CSV-Datei als Ausgabe.

Die Version von Excel, die ich verwende, ist Excel 2003 und mein Betriebssystem ist Windows XP

Kann jemand vorschlagen, wie man eine mit Semikolon getrennte Datei mit VBA speichert?

    
user1758952 21.11.2012, 15:38
quelle

4 Antworten

11

Ich habe das gerade überprüft, weil das gleiche Problem hatte. Dateiname hat in diesem Fall keine Funktionalität.

Das hat bei mir funktioniert:

%Vor%

In regionalen Einstellungen - & gt; ; & lt; - als Listentrennzeichen. Es ist auch wichtig, Änderungen beim Schließen nicht zu speichern - & gt; Mit Close müssen Sie False verwenden.

    
user2726096 28.08.2013 15:44
quelle
1

Sie müssen nicht alle diese Variablen deklarieren, fügen Sie einfach local: = true am Ende Ihrer SaveAs-Methode hinzu, etwa so:

%Vor%     
Leo 21.06.2017 17:26
quelle
0

Benutze einfach diesen Code: ActiveWorkbook.SaveAs "Meine Datei.csv", xlCSV, Lokal: = True

(nicht verwenden: Dateiname: =)

    
bik128 02.07.2013 09:23
quelle
0

Um das vbs-Skript zu verwenden, ist folgende Konstruktion erfolgreich:

.SaveAs Dateiname, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1

Argumente sind:

%Vor%

SourceLink: Ссылка

Letzte "1" in "SaveAs" Funktion ist gleich Local = True

Außerdem muss das Semikolon in den regionalen Einstellungen des Betriebssystems als Listentrennzeichen definiert werden (siehe Antworten oben).

    
Andrey 25.03.2015 21:03
quelle

Tags und Links