Datei als CSV exportieren - Komma statt Semikolon als Trennzeichen

06/04/2009 - 10:07 von Maria Scillano | Report spam
Hallo.

Ich möchte im Excel eine Datei als CSV exportieren, jedoch wird mir immer
wieder Semikolon zwischen den Spalten ausgegeben, obwohl ich gerne
stattdessen ein Komma gerne hàtte.
Wo muss ich es einstellen?

Ich habe bisher unter Regionale Optionen in der Systemsteuerung geàndert,
das hat aber keine Abhilfe gebracht.

Ich möchte auch nicht die erstellte Datei nachbearbeiten, es soll schon mit
Komma statt Semikolon als Trennzeichen rauskommen.
 

Lesen sie die antworten

#1 thomas.ramel
06/04/2009 - 10:50 | Warnen spam
Grüezi Maria

On 6 Apr., 10:07, Maria Scillano wrote:

Ich möchte im Excel eine Datei als CSV exportieren, jedoch wird mir immer
wieder Semikolon zwischen den Spalten ausgegeben, obwohl ich gerne
stattdessen ein Komma gerne hàtte.
Wo muss ich es einstellen?



Mit welchen Sprach-Einstellungen im Betriebssystem arbeitest Du denn?

Excel richtet sich stark nach diesen Einstellungen und das ist auch
gut so.

Ich habe bisher unter Regionale Optionen in der Systemsteuerung geàndert,
das hat aber keine Abhilfe gebracht.

Ich möchte auch nicht die erstellte Datei nachbearbeiten, es soll schon mit
Komma statt Semikolon als Trennzeichen rauskommen.



Wenn Du abweichende Ausgaben in die .CSV willst, dann stellen im BS
die Sprache temporàr auf Englsich(USA) um und speichre deine Mappe.

Oder aber Du speicherst das Tabellenblatt per VBA, das ist dann
standardmàssig in der VBA 'Original-Sprache' und liefert das Komma als
Spaltentrenner.


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

'Speicherpfad eintragen
Const Path As String = "C:\Test\"
'Dateiname eintragen
Const filename As String = "Test2"
'Dateiendung anpassen (.txt, .csv oder andere)
Const Extension As String = ".TXT"
'Trennzeichen anpassen (Semikolon, Komma oder andere)
Const Separator As String = ";"
'Texerkennungszeichen anpassen (kann meist so bleiben)
Const Wrapper As String = """"

'Zu speichernden Bereich eintragen z.B:
'Worksheet("DeinTabellenblatt").UsedRange
'Worksheet("DeinTabellenblatt").Range("A1:B10")

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, Join(D(), vbCrLf)
Close #1
End If
End Sub


Mit freundlichen Grüssen

Thomas Ramel
- MVP für MS-Excel -

Ähnliche fragen