ich stehe vor dem Problem, dass ich eine Exceldatei habe, aus dem ich ein Tabellenblatt mit dem Namen "Export" als csv in ein bestimmtes Verzeichnis speichern möchte. Das Ganze soll dann auch noch als "CSV-UTF (durch Trennzeichen getrennt)" gespeichert werden.
Im Internet habe ich das nachfolgende Makro gefunden, welches eigentlich recht gut passt....nur fehlt mir dazu noch folgendes:
- Abfrage nach dem Verzeichnisnamen, oder besser, die Speicherung soll immer in den Pfad: "j:\export\" erfolgen
- Das Dateiformat soll wie oben erwähnt automatisch im Format "CSV-UTF (durch Trennzeichen getrennt)" erfolgen
Weiß jemand von euch, wie man das hier noch einbauen kann:
Sub ExportCSV()
Dim Bereich As Object, Zeile As Object, Zelle As Object
Dim strTemp As String
Dim strDateiname As String
Dim strTrennzeichen As String
Dim strMappenpfad As String
Dim blnAnfuehrungszeichen As Boolean
strMappenpfad = ActiveWorkbook.FullName
strDateiname = InputBox("Bitte den Namen der CSV-Datei angeben.", "CSV-Export", strMappenpfad)
If strDateiname = "" Then Exit Sub
strTrennzeichen = InputBox("Welches Trennzeichen soll verwendet werden?", "CSV-Export", ",")
If strTrennzeichen = "" Then Exit Sub
If MsgBox("Sollen die Werte in Anführungszeichen exportiert werden?", vbQuestion + vbYesNo, " _
CSV-Export") = vbYes Then
blnAnfuehrungszeichen = True
Else
blnAnfuehrungszeichen = False
End If
Set Bereich = ActiveSheet.UsedRange
Open strDateiname For Output As #1
For Each Zeile In Bereich.Rows
For Each Zelle In Zeile.Cells
If blnAnfuehrungszeichen = True Then
strTemp = strTemp & """" & CStr(Zelle.Text) & """" & strTrennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & strTrennzeichen
End If
Next
If Right(strTemp, 1) = strTrennzeichen Then strTemp = Left(strTemp, Len(strTemp) - 1)
Print #1, strTemp
strTemp = ""
Next
Close #1
Set Bereich = Nothing
MsgBox "Export erfolgreich. Datei wurde exportiert nach" & vbCrLf & strDateiname
End Sub
vielen Dank im voraus.viele Grüße
Jürgen