Range Find Methode VBA
19.11.2018 00:34:06
SteinApfel
Bezogen auf:
https://docs.microsoft.com/de-de/office/vba/api/Excel.Range.Find#example
Mein Bsp:
A B C
1 0 9 3
2 2 7
3 4 5
4 6 3
5 8 1
Gesuchter Wert ist C1, also 3.
Meine Bezugstabelle ist A1 bis A5, dort soll die Zahl 3 gefunden werden, bzw. einmal der kleinere Wert und einmal der nächst größere Wert. Ausgegeben werden soll die Zellennummer, also in diesem Fall 2 (nächst kleinere) und 3 (nächst größere). Es soll nicht in Spalte B suchen!
Dim Wert As Double
Wert = Tabelle1.Range("C1").Value
Dim j As Integer
j = Tabelle1.Cells.Find(Wert, LookIn:=xlValues, lookat:=xlPart, searchdirection:=xlNext).Row
--- j = 2
j = Tabelle1.Cells.Find(Wert, LookIn:=xlValues, lookat:=xlPart, searchdirection:=xlPrevious).Row
--- j = 4 Was nicht passieren soll!
Wenn ich aber statt Cells einen Bereich (Range("A1:A5") angebe, erscheint ein Laufzeitfehler 91.
Ich kann es mir nicht erklären...
Vielen Dank für Eure Bemühungen!
Beste Grüße
Hendrik