Ich suche in einer Spalte die Zeile mit dem letzten Vorkommen eines bestimmten Wertes. Im Netz habe ich folgenden Code gefunden.
Sub suchen()
Set Ws1 = Sheets("Dummy")
Call Find_Last("9999999999.999")
End Sub
Sub Find_Last(FindString As String)
Dim Rng As Range
If Trim(FindString) "" Then
With Ws1.Range("D:D")
Set Rng = .Find(What:=FindString, _
After:=.Cells(1), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False)
If Not Rng Is Nothing Then
Application.Goto Rng, True
' *** selber eingefügt ****
zeile = ActiveCell.Row
Rows("2:" & zeile).Delete Shift:=xlUp
Else
MsgBox "Nothing found"
End If
End With
End If
End Sub
Ich möchte aber die Zeilennummer als Rückgabewert um dann den Bereich zu löschen. Gibt es hier nicht eine bessere Möglichkeit als mit Application.Goto Rng, True in die letzte Zeile zu springen?
mfg
Christoph