Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1784to1788
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Find-Methode zweimal nutzen

Find-Methode zweimal nutzen
29.09.2020 17:40:37
Nutzer22
Hallo zusammen,
ich habe folgenden Code:
Sub TESTER()
Dim Ziel As Worksheet
Dim Quelle As Worksheet
Set Quelle = Worksheets("Beispiel1")
Dim wert1 As Range
Dim wert2 As Range
Dim rgSearch As Range
Set rgSearch = Quelle.Range("A1:G55")
Set wert1 = rgSearch.Find("Hallo", LookIn:=xlValues, LookAt:=xlWhole)
Set wert2 = rgSearch.Find("test", LookIn:=xlValues, LookAt:=xlWhole)
Dim firstCellAddress As String
firstCellAddress = wert1.Address
Do
MsgBox ("Wert 1: " & wert1)
Set wert1 = rgSearch.FindNext(wert1)
Loop While firstCellAddress  wert1.Address
End Sub
In meiner Tabelle befindet sich mehrfach der Wert "Hallo" und mehrfach der Wert "test".
Jetzt bekomme ich beim Ausführen in der MsgBox in der ersten "Runde" den richtigen gefundenen Wert "Hallo". Jedoch danach gibt er mir nur noch die Werte "test" aus. Dies ist nicht richtig, weil ich nur alle "Hallo" angezeigt bekommen möchte.
Wenn ich die Zeile "Set wert2 = rgSearch.Find("test", LookIn:=xlValues, LookAt:=xlWhole)" lösche, funktioniert alles wie es soll.
Wieso springt die FindNext() Methode in den Find-Aufruf von "test"?
Das weglassen der Zeile von Wert2 ist leider keine Option, da ich diesen später benötige.
Vielen Dank im Voraus :)

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Find-Methode zweimal nutzen
29.09.2020 17:47:27
Daniel
Hi
das FindNext bezieht sich halt immer auf die letzte Suche.
du kannst anstelle von FindNext auch das normale .Find mit allen seinen Parametern angeben und dabei, um das .FindNext zu simulieren zusätzlich den Parameter: After:=Wert1 angeben.
Bei After:= stellt man die Zelle ein, nach der die Suche beginnen soll, dh immer die zuletzt gefundene Zelle zu diesem Suchwert.
Gruß Daniel
AW: Find-Methode zweimal nutzen
29.09.2020 17:55:02
Nutzer22
Hey Daniel,
super, vielen Dank. So funktioniert es! :D
Find es trotzdem doof, dass sich das FindNext() nicht auf bestimmte Find() beziehen lässt... Aber damit werd ich Leben müssen ;)
Danke nochmal!
Anzeige
AW: Find-Methode zweimal nutzen
29.09.2020 18:00:33
Daniel
dann müsste man ja irgenwie angeben, auf welches .Find man sich bezieht und dann wäre es wieder genauso aufwendig wie ein normales .Find und man könnte auf die Funktion auch verzichten.
im Prinzip musst du ja nur auf die richtige Reihenfolge der vorausgehenden .FINDs achten.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige