Hallo zusammen,
ich habe ein Arbeitsblatt, in welchem in einem nicht genau definierten Bereich entweder Wort1 oder Wort2 vorkommen muss. Den Bereich habe ich auf 100 Spalten und eine unbestimmte Zahl an Zeilen eingegrentzt. Die Zeilen sollen immer von Spalte 1 bis Spalte 100 durchsucht werden, dann soll in die nächste Zeile gesprungen werden und dasselbe wieder, bis eines der zwei Wörter gefunden wird. Allerdings springt mein Code nie in die nächste Zeile, sondern durchsucht immer nur die erste bis sich das Programm aufhängt.
1. Frage: Wo ist mein Fehler im Code, dass nicht in die nächste Zeile auf die erste Zelle dieser Zeile gesprungen wird?
2. Frage: Kann man so eine Suche irgendwie effizienter gestalten?
Vielen Dank für jede Hilfe! Grüße Simon
Do While ActiveCell <> "Wort1" Or ActiveCell <> "Wort2"
For i = 1 To 100
If ActiveCell = "Wort1" Then
AktuelleZeile = ActiveCell.Row
AktuelleSpalte = ActiveCell.Column
Exit Do
End If
If ActiveCell = "Wort2" Then
KeineDaten = True
Exit Do
End If
ActiveCell.Offset(0, 1).Activate
Next
ActiveCell.Offset(1, 0).Activate
Cells(ActiveCell.Row, 1).Activate
Loop
|