Probleme mit Find
Gregor
Nach folgendem Code suche ich in einer umfangreichen Tabelle zB den Begriff "Muster". Die Zeile oder die Zeilen mit dem gefundenen Begriff "Muster" wird in eine andere Tabelle kopiert, wobei es 1 oder aber mehrere Zeilen sein können. Deshalb die Abfrage nach ZeileEnd.
Es wird immer ab der nächsten Zeile gesucht, bei mir also am Anfang nach Zeile 5 ab Zeile 6 und anschiessend nach der ZeileEnd (ist ZeileEnd 450 ab 451). Beim letzten Eintrag "Muster" geht der Loop jedoch in eine Endlosschleife, das heisst, der Code eruiurt immer wieder dieselbe Zeile sodass rng nie leer wird und eine Endlosschleife produziert.
Was ist hier das Problem bzw. wie kann ich das lösen? Danke und Gruss
Gregor
With Worksheets(1)
intLastRow = .Cells(Rows.Count, 8).End(xlUp).Row
Zeile = 5
Do
Set rng = .Range(.Cells(Zeile, 7), .Cells(intLastRow, 7)).Find("Muster", LookAt:=xlWhole)
If Not rng Is Nothing Then
Zeile = rng.Row
ZeileEnd = IIf(IsEmpty(.Cells(Zeile + 1, 1)), IIf(IsEmpty(.Cells(.Cells(Zeile, 1).End(xlDown).Row - 1, 8)), .Cells(.Cells(Zeile, 1).End(xlDown).Row, 8).End(xlUp).Row, .Cells(Zeile, 1).End(xlDown).Row - 1), Zeile)
intLastRowPaste = Worksheets(2).Cells(Rows.Count, 8).End(xlUp).Row + 1
'--- Kopierbereich
Set Kopieren = .Range(.Cells(Zeile, 1), .Cells(ZeileEnd, 20))
'--- Zielbereich
Set Ziel = Worksheets(2).Cells(intLastRowPaste, 1)
Kopieren.Copy Ziel
Zeile = ZeileEnd
End If
Loop While Not rng Is Nothing
End With