Dim ls As Range
Set ls= ActiveCell
ls= Range(lc).End(xlDown).Row
ich wollte damit die letzte beschriebene Zelle der Aktiven Spalte ermitteln,
leider Fehlermeldung.
Vielleicht kann mir jemand ein Tip geben ?
gr Kurt P
Option Explicit
Sub Kurt()
Dim LoLetzte As Long
' Das führt zu Fehler unter Versionen vor 2007 falls keine Zelle ausgewählt wurde
If Not TypeOf Selection Is Range Then Exit Sub ' Hinweis von Beverly (Karin)
' Prüfng ob Tabelle ausgewählt
If TypeName(ActiveSheet) "Worksheet" Then Exit Sub
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, ActiveCell.Column)), Cells(Rows.Count, ActiveCell. _
Column).End(xlUp).Row, Rows.Count)
MsgBox "letzte belegte Zeile " & LoLetzte & " in Spalte " & ActiveCell.Column
End Sub
Sub Letzte_Zelle_ermitteln()
'--- letzte Zelle in der Activen Spalte ermitteln ---------------
Dim LoLetzte As Long
' Das führt zu Fehler unter Versionen vor 2007 falls keine Zelle ausgewählt wurde
If Not TypeOf Selection Is Range Then Exit
Sub ' Hinweis von Beverly (Karin)
' Prüfng ob Tabelle ausgewählt
If TypeName(ActiveSheet) "Worksheet" Then Exit Sub
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, ActiveCell.Column)), _
Cells(Rows.Count, ActiveCell.Column).End(xlUp).Row, Rows.Count)
' MsgBox "letzte belegte Zeile " & LoLetzte & " in Spalte " & ActiveCell.Column
ActiveSheet.Cells(LoLetzte, ActiveCell.Column).Activate
End Sub
gr Kurt P
Dim ls As Range
Set ls= ActiveCell
ls= Range(lc).End(xlDown).Row
3. Was möchtest du mit der letzten beschriebenen Zelle der Spalte tun?
Und ein Hinweis:
Mit deinem Code wird nicht unbedingt die letzte beschriebene Zelle der Spalte gefunden,
sondern die Zelle über der ersten leeren Zelle unterhalb der aktiven Zelle.
Darunter können wieder Daten kommen.
Das passiert natürlich nur dann, wenn innerhalb der Daten leere Zellen vorkommen.
Mit LoLetzte in Hajos Code kennst du die Zeillennummer der letzten belegten Zelle in der Spalte:
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, ActiveCell.Column)), _
Cells(Rows.Count, ActiveCell.Column).End(xlUp).Row, Rows.Count)
Die letzte Zelle ist dann Cells(LoLetzte, ActiveCell.Column)
Damit kannst du dann tun, was immer du möchtest.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort