Hallo Excel-Profis,
in einem Makro sollen aus den Spalte Z + AA + AB die 1. bis letzte beschriebene Zeile in eine CSV-Datei geschrieben werden.
Bis zur Zeile 409 klappt das auch. Alle nachfolgenden werden nicht in die CSV-Datei geschrieben.
Ich finde den Fehler in meinem Makro nicht. Hat jemand eine Idee?
Sub MinSib_EK_Vorgabe()
'
Dim strBlatt As String
Dim Ausgabepfad As String
Dim Ausgabedatei As String
Dim lngSpalte As Long
Dim lngLetzte As Long
Dim z As Long
Dim Zeile As String
Dim VollZeile As String
Dim Trennzeichen As String
'Bildschirmaktualisierung ausschalten
Application.ScreenUpdating = False
'Variablen festlegen
strBlatt = "MinSib EK-Vorgabe" 'Name des zu exportierenden Arbeitsblattes
Ausgabepfad = "M:\" 'Pfad, in der die Datei exportiert werden soll - anpassen!
Trennzeichen = ";" 'Trennzeichen wird festgelegt
'Ausgabepfad und Dateinamen für Ausgabedatei erstellen - Ausgabename anpassen
Ausgabedatei = Ausgabepfad & "minbestaende_" & Worksheets("Beipackzettel").Range("C4").Value & ".csv"
'letzte Zeile des Tabellenblatts ermitteln
lngLetzte = Worksheets(strBlatt).Cells(Rows.Count, 1).End(xlUp).Row
'Falls Ausgabedatei bereits besteht, wird diese gelöscht
If Dir(Ausgabedatei) <> "" Then Kill (Ausgabedatei)
'Datei Öffnen zur Ausgabe
Open Ausgabedatei For Output As #1
For z = 1 To lngLetzte
'Nur die Spalten Z bis AB werden exportiert
For lngSpalte = 26 To 28
Zeile = Trim(Worksheets(strBlatt).Cells(z, lngSpalte).Text)
Zeile = Replace(Zeile, Trennzeichen, "") 'ggf in Text vorkommendes Trennzeichen wird gelöscht
VollZeile = VollZeile & Zeile & Trennzeichen
Next lngSpalte
'Ausgabe in Datei
VollZeile = Left(VollZeile, Len(VollZeile) - 1) 'Letzten Semicolon abschneiden
If Len(Replace(VollZeile, Trennzeichen, "")) > 0 Then Print #1, VollZeile
VollZeile = ""
Next z
Close #1 'Datei schliessen
'Bildschirmaktualisierung
If Application.Ready Then
Application.ScreenUpdating = True
End If
'Abschlussmeldung
MsgBox "MinSib EK-Vorgabe gespeichert; an REWA denken!", 64
End Sub