Nur noch ein kleines Problem. Habe jetzt die funktionierende Funktion GetLastRow, die mit die definitv letzte "richtig" beschriebene Zeile liefert. Ich benötige jetzt nur noch die richtige Übergabe an meine Sub. In meiner
Sub durchlaufe ich alle sheets, bei denen eine Range gebildet werden soll. Die GetLastRow-Funktion muss nur noch ihren Wert richtig zurückgeben. Leider funzt es
noch nicht so richtig....
'Funktion : GetLastRow (4.Spalte ist ausreichend für Überprüfung)
Function GetLastRow(Optional spalte As Integer = 4) As Long
GetLastRow = Rows.Count
If Cells(GetLastRow, spalte).Value = "" Then GetLastRow = Cells(GetLastRow, spalte).End(xlUp).Row
End Function
'Sub DatenRangesBilden
Sub DatenRangesBilden()
lastR As Long
Dim blatt As Worksheet
' Range für sheet1, sheet2 und sheet3 bilden
For Each blatt In ActiveWorkbook.Sheets
lastR = GetLastRow(blatt.Columns(4))
ActiveWorkbook.Names.Add Name:=blatt.Name, RefersTo:= _
"=" & blatt.Name & "!" & _
"$28:$" & lastR
Next
End Sub