Pfad ändern
05.12.2024 18:58:00
Oegli2911
ich habe einen funktionierenden Code um mir eine .CSV-Datei per Makro erstellen zu lassen.
Nun wird die Datei aber immer in den aktuellen Speicherordner der Exceldatei gelegt.
Ich würde gerne einen anderen Pfad angeben und dafür muss der Code geändert werden.
Ich habe reichlich herumprobiert, bekomme es aber nicht hin,
Danke vorab!
Sub ExportToCSV()
Dim ws As Worksheet
Dim tbl As ListObject
Dim rng As Range
Dim csvFileName As String
Dim csvData As String
Dim row As ListRow
Dim i As Long
Dim updatedValue As Variant
' Set Worksheet and Table
Set ws = ThisWorkbook.Worksheets("Import")
Set tbl = ws.ListObjects("Artikelimport")
' Adjust column values before export
For Each row In tbl.ListRows
With row.Range
' Anpassungen in den angegebenen Spalten vornehmen
.Cells(1, tbl.ListColumns("Materialeigenschaft").Index).Value = "Leer"
.Cells(1, tbl.ListColumns("Behälter1").Index).Value = "Stahlrahmen"
.Cells(1, tbl.ListColumns("Behälter2").Index).Value = "EPAL"
.Cells(1, tbl.ListColumns("Behälter3").Index).Value = ""
.Cells(1, tbl.ListColumns("Dummy").Index).Value = ""
End With
Next row
' Create CSV file path
csvFileName = ThisWorkbook.Path & "\Artikelimport.csv"
' Add table headers to CSV data
For i = 1 To tbl.ListColumns.Count
csvData = csvData & tbl.ListColumns(i).Name & IIf(i tbl.ListColumns.Count, ";", vbCrLf)
Next i
' Loop through the table and build CSV data
For Each row In tbl.ListRows
For i = 1 To tbl.ListColumns.Count
csvData = csvData & row.Range.Cells(1, i).Value & IIf(i tbl.ListColumns.Count, ";", vbCrLf)
Next i
Next row
' Write CSV data to file
With CreateObject("Scripting.FileSystemObject")
With .CreateTextFile(csvFileName, True, True)
.Write csvData
.Close
End With
End With
MsgBox "CSV-Datei wurde erfolgreich erstellt: " & csvFileName, vbInformation
End Sub
Anzeige