Ich habe eine Excel-Tabelle mit zur Zeit 1598 gefüllten Zeilen. Die Anzahl der gefüllten Zeilen ändert sich mehrmals täglich.
Ich möchte die Inhalte der Spalte mit dem Namen "URL" (Spalte AH) in eine Text-Datei schreiben per Makro. Und zwar so, dass die Zelleninhalte untereinander in die Textdatei geschrieben werden.
Ich habe mir aus einem Forum ein Makro ergoogelt, was das auch soweit erstmal gut macht. Aber in diesem Makro muss ich für die besagte Spalte angeben, von welcher Zeile bis zu welcher Zeile die Zelleninhalte in die Text-Date geschrieben werden sollen.
Das hätte ich gerne anders. Und zwar so, dass das Marko selbst quasi merkt, bis zu welcher Zeile meine Tabelle aktuell geht. Also ich meine, welche Zeile die letzte ist, die noch mit Inhalten gefüllt ist. Ich erläutere es mit einem Beispiel:
Bisher steht im Makro z.B. Range("AH1:AH1598")
Es soll aber sinngemäß sowas sein wie: Range("AH1:letzte_gefüllte_zeile")
Wie kann ich das denn erreichen?
Hier nun das Makro:
Sub speichern()
Dim f As Integer
Dim c As Variant
Dim DateiName As String
f = FreeFile
DateiName = "C:\Users\OttoKarl\Temp\exceltest.txt"
Open DateiName For Output As f
For Each c In Worksheets("Angebot").Range("AH2:AH1598")
Print #f, c
Next
Fehler:
If Err.Number 0 Then
MsgBox Err.Description, vbCritical + vbOKOnly, "Fehler:" & Err.Number
Err.Clear
End If
Close f
On Error GoTo 0
End Sub