Gestern, 09:40
Hallo zusammen,
ich hoffe ihr könnt mir hier helfen. Nachstehend ein VBA-Modul, wo eine csv aus einem Tab erzeugt wird. Nun soll hier beim Namen "Montageliste" noch die Nummer angehangen werden, welche im Tab Zeitkalkulation C1 steht. Irgendwie bekomme ich die Verbindung nicht hin.
Ausgabebeispiel:
Nummer in Zeitkalkulation C1: 2026123
Ausgabe des Dateinamens beim erzeugen der csv: Montageliste 2026123
Sub MontagelisteUMD()
Sheets("Montageliste UMD").Select
Cells.Select
Range("A1").Activate
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("A1").Select
Sheets("Montageliste UMD").Select
CSVDatei_schreiben
End Sub
Sub CSVDatei_schreiben()
Dim strVerzeichnis As String, nFileNr
Dim K As Integer, N As Integer, F As Integer
Dim FileName As String
Dim Daten As Variant
Dim objStream As Object
Dim strTextFile_Neu As String
Dim sText As String
Dim intFile
On Error GoTo ErrorHandler
strVerzeichnis = ActiveWorkbook.Path & "\"
FileName = InputBox("Dateiname!", "Filenamen für csv", "Montageliste")
If InStr(FileName, ".csv") > 0 Then
F = InStr(FileName, ".csv")
FileName = Left(FileName, F - 1)
ElseIf Len(FileName) < 3 Then
Exit Sub
End If
With Worksheets("Montageliste UMD")
For N = 1 To .Cells(Rows.Count, 15).End(xlUp).Row
For K = 1 To .Cells(1, Columns.Count).End(xlToLeft).Column
Daten = Daten & .Cells(N, K).Value & ";"
Next
sText = sText + Daten & Chr(10)
Daten = ""
Next N
End With
intFile = FreeFile
strTextFile_Neu = strVerzeichnis & FileName & Sheet("Zeitkalkulation, Range C1") & ".csv"
Set objStream = CreateObject("ADODB.Stream")
With objStream
.Type = 2 'Stream Typ
.Charset = "utf-8"
.Open
.WriteText sText 'Text schreiben
.SaveToFile strTextFile_Neu, 2 'binary Daten speichern
End With
Exit Sub
ErrorHandler:
MsgBox "Fehlerhafte Eingaben ! Bitte korrigieren und wiederholen.", vbCritical, "Hinweis"
End Sub
ich hoffe ihr könnt mir hier helfen. Nachstehend ein VBA-Modul, wo eine csv aus einem Tab erzeugt wird. Nun soll hier beim Namen "Montageliste" noch die Nummer angehangen werden, welche im Tab Zeitkalkulation C1 steht. Irgendwie bekomme ich die Verbindung nicht hin.
Ausgabebeispiel:
Nummer in Zeitkalkulation C1: 2026123
Ausgabe des Dateinamens beim erzeugen der csv: Montageliste 2026123
Sub MontagelisteUMD()
Sheets("Montageliste UMD").Select
Cells.Select
Range("A1").Activate
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("A1").Select
Sheets("Montageliste UMD").Select
CSVDatei_schreiben
End Sub
Sub CSVDatei_schreiben()
Dim strVerzeichnis As String, nFileNr
Dim K As Integer, N As Integer, F As Integer
Dim FileName As String
Dim Daten As Variant
Dim objStream As Object
Dim strTextFile_Neu As String
Dim sText As String
Dim intFile
On Error GoTo ErrorHandler
strVerzeichnis = ActiveWorkbook.Path & "\"
FileName = InputBox("Dateiname!", "Filenamen für csv", "Montageliste")
If InStr(FileName, ".csv") > 0 Then
F = InStr(FileName, ".csv")
FileName = Left(FileName, F - 1)
ElseIf Len(FileName) < 3 Then
Exit Sub
End If
With Worksheets("Montageliste UMD")
For N = 1 To .Cells(Rows.Count, 15).End(xlUp).Row
For K = 1 To .Cells(1, Columns.Count).End(xlToLeft).Column
Daten = Daten & .Cells(N, K).Value & ";"
Next
sText = sText + Daten & Chr(10)
Daten = ""
Next N
End With
intFile = FreeFile
strTextFile_Neu = strVerzeichnis & FileName & Sheet("Zeitkalkulation, Range C1") & ".csv"
Set objStream = CreateObject("ADODB.Stream")
With objStream
.Type = 2 'Stream Typ
.Charset = "utf-8"
.Open
.WriteText sText 'Text schreiben
.SaveToFile strTextFile_Neu, 2 'binary Daten speichern
End With
Exit Sub
ErrorHandler:
MsgBox "Fehlerhafte Eingaben ! Bitte korrigieren und wiederholen.", vbCritical, "Hinweis"
End Sub


![[Bild: Screenshot-2026-08-17-105357.png]](https://i.ibb.co/6JJddq3P/Screenshot-2026-08-17-105357.png)
