Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: CSV selbst erstellt - Komma statt Punkt

CSV selbst erstellt - Komma statt Punkt
Philipp
Hallo an alle!
Ich erzeuge über ein - im Archiv gefundenes - Makro aus den Daten eine CSV-Datei.
Für die verschiedenen Spalten brauch ich eigene Formatierungen (zB Spalte 2: Datumsformat mit ".", klappt).
Wie bekommen ich es hin, dass er bei den Werten (Spalten 4, 5 und 6) ein Komma als Dezimaltrennzeichen verwendet anstatt eines Punktes? Leider kennen ich dafür erforderlichen Befehle nicht ...
Anbei der Code, wie ich ihn bisher habe!
Danke schon vorab für jede Hilfe!
LG Philipp
===
Sub CSVExport()
Dim sFile As Variant, msgAntwort As Variant
Dim Daten As Range, Zeile As Object, Zelle As Object
Dim strTemp As String
On Error GoTo errorhandler
With ActiveSheet
ChDrive (ThisWorkbook.Path)
ChDir (ThisWorkbook.Path)
SendKeys "{ENTER}"
sFile = Application.GetSaveAsFilename(InitialFileName:="TRDB--" & Format(Date, "YYYY-MM-DD") _
_
& "--" & VBA.Format(VBA.Time, "hh-mm-ss") & ".csv", _
FileFilter:="CSV-Datei (*.csv), *.csv") '& vbCrLf
Set Daten = .UsedRange
Close
Open sFile For Output As #1
For Each Zeile In Daten.Rows
If Zeile.Row > .Range("A65536").End(xlUp).Row Then
MsgBox "Die Datei wurde erfolgreich exportiert.", vbInformation, "Export  _
erfolgreich"
Exit Sub
End If
For Each Zelle In Zeile.Cells
If (Zelle.Column = 2) And Zelle  "" Then
strTemp = strTemp & CStr(Format(Zelle, "DD") & "." & Format(Zelle, "MM") _
& "." & Format(Zelle, "YYYY")) & ";"
Else
If (Zelle.Column = 4) Then
strTemp = strTemp & CStr(Zelle.Text) & ";"
Else
strTemp = strTemp & CStr(Zelle.Text) & ";"
End If
End If
Next Zelle
Print #1, Left(strTemp, Len(strTemp) - 1 + (Left(strTemp, 1) = "z"))
strTemp = ""
Next Zeile
Close #1
End With
Exit Sub
errorhandler:
MsgBox "Es ist ein Fehler aufgetreten. Die Datei konnte nicht vollstndig exportiert werden.",   _
_
vbCritical, "Fehlermeldung"
End Sub

Anzeige
nicht nachvollziehbar. Beispiel? owT
29.07.2009 11:08:31
Rudi
AW: nicht nachvollziehbar. Beispiel? owT
29.07.2009 11:30:11
Philipp
Hallo Rudi!
Du hast Recht, mit einem Beispiel geht das einfacher zu erklären:
Ähnlich wie das Datumsformat in Spalte 2 umgewandet wird (in das Format DD.MM.YYYY), brauche ich eine Umwandlung der Werte (zB 2.51) in den Spalten 4, 5 und 6 in Werte mit Komma als Dezimaltrennzeichen (zB 2,51).
Beispiel: Daten gem. Excel-Tabelle:
d 40018 ZAR 10.9133287 10.9287747 10.9442207
Gewünschtes Ergebnis in CSV-Format:
d;24.07.2009;ZAR;10,9133287;10,9287747;10,9442207
Vielen Dank schon vorab!
LG Philipp
Anzeige
AW: CSV selbst erstellt - Komma statt Punkt
29.07.2009 11:33:33
Philipp
Hallo Bertram!
Danke, das hatte ich auch gefunden - leider kann ich den Code nicht nachvollziehen und daher nicht auf meinen Bedarf anpassen. Unter anderem speichere ich die Datei mit Datum und Uhrzeit (inkl. Sekunden) ab, so dass ich nicht mal sicher bin, wie ich diese Datei wieder öffnen kann ...
Andere Vorschläge?
Trotzdem Dank!
LG Philipp
Anzeige
AW: CSV selbst erstellt - Komma statt Punkt
29.07.2009 11:37:46
Rudi
Hallo,
teste mal:
      For Each Zelle In Zeile.Cells
Select Case Zelle.Column
Case 2
If Zelle  "" Then
strTemp = strTemp & Format(Zelle, "DD.MM.YYYY") & ";"
Else
strTemp = strTemp & ";"
End If
Case 4 To 6
strTemp = strTemp & Replace(Zelle.Text, ".", ",") & ";"
Case Else
strTemp = strTemp & Zelle.Text & ";"
End Select
Next Zelle

Gruß
Rudi
Anzeige
AW: CSV selbst erstellt - Komma statt Punkt
29.07.2009 13:45:57
Philipp
Hallo Rudi!
Herzlichen Dank! Ich habe ein paar kleine Ergänzungen gemacht - läuft jetzt perfekt!
Schönen Tag noch!
LG Philipp
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige