ich habe eine xls-Datei in Excel 2003, die ich als CSV ausgeben möchte. Dazu
gehe ich also auf "Datei" > "Speichern Unter" und speichere es als
CSV-Datei. Leider erstellt Excel diese immer mit einem Semikolon anstatt mit
einem Komma als Trennzeichen.
Wie kann ich die xls-Datei als CSV-Datei speichern, so dass ein Komma
anstatt des Semikolons als Trennzeichen verewndet wird?
Schöne Grüße,
Martin
Martin Brachmann schrieb am 06.04.2007
> ich habe eine xls-Datei in Excel 2003, die ich als CSV ausgeben möchte. Dazu
> gehe ich also auf "Datei" > "Speichern Unter" und speichere es als
> CSV-Datei. Leider erstellt Excel diese immer mit einem Semikolon anstatt mit
> einem Komma als Trennzeichen.
Das ist nicht leider, sondern durch die Ländereinstellungen so vorgegeben.
Hierzulande ist das Semikolon nun mal das Trennzeichen, da das Komma durch
den Dezimaltrenner bereits belegt wird.
> Wie kann ich die xls-Datei als CSV-Datei speichern, so dass ein Komma
> anstatt des Semikolons als Trennzeichen verewndet wird?
Stelle temporär die Ländereinstellungen des Betriebssystems auf
Englisch(USA), lies die Daten aus und stelle wieder auf die gewohnten
Einstellungen zurück.
Oder lies die Daten mit z.B. der folgenden VBA-Prozedur aus:
Sub SaveCSV_a()
Dim A As Variant
Dim B() As String
Dim D() As String
Dim Z As Long
Dim S As Byte
Dim R As Long
Dim C As Byte
Const Path As String = "C:\Test\"
Const Filename As String = "Test2"
Const Extension As String = ".CSV"
Const Separator As String = ";"
Const Wrapper As String = """"
'Here you can define your own Range, too
A = ActiveSheet.UsedRange
If Not IsEmpty(A) Then
Z = UBound(A, 1)
S = UBound(A, 2)
ReDim B(S - 1)
ReDim D(Z - 1)
For R = 1 To Z
For C = 1 To S
If InStr(1, A(R, C), Separator) > 0 Then
'Rows whith cells including the Separator
'put in Wrapper
B(C - 1) = Wrapper & A(R, C) & Wrapper
Else
B(C - 1) = A(R, C)
End If
Next C
D(R - 1) = Join(B(), Separator)
Next R
Open Path & Filename & Extension For Output As #1
Print #1, "sep=" & Separator & vbCrLf & Join(D(), vbCrLf)
Close #1
End If
End Sub
Mit freundlichen Grüssen
Thomas Ramel
--
- MVP für Microsoft-Excel -
[Win XP Pro SP-2 / xl2000 SP-3]
Microsoft Excel - Die ExpertenTipps