Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1676to1680
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

is Nothing abfangen bei Find Befehl

is Nothing abfangen bei Find Befehl
04.03.2019 13:29:27
Martin
Fällt jemandem zufällig sponatan ins Auge, wieso ich bei folgender Abfrage einen Abbruch "424 Objekt erforderlich" kriege?
With ActiveCell
If Worksheets("WERBER_Ueberschriften").Columns(5).Find(What:=.Offset(, -1).Value, LookAt:=xlWhole, SearchDirection:=xlNext).Row Is Nothing Then

mach dies
Else
mach das
End With
Gebe ich nur
Worksheets("WERBER_Ueberschriften").Columns(5).Find(What:=.Offset(, -1).Value, LookAt:=xlWhole, SearchDirection:=xlNext).Row
auf und mache die if Abfrage nicht, kommt der Abbruch nicht. Ich brauche die Prüfung aber in der folgenden Verarbeitung.
Gruß Martin

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: is Nothing abfangen bei Find Befehl
04.03.2019 13:49:46
EtoPHG
Hallo Martin,
Einfach mal die VBA Hilfe zur Find-Methode lesen, dann müsste es klar werden.
Die Methode returniert ein Range-Objekt, das Nothing ist, wenn nichts gefunden wurde und die Range, falls was gefunden wurde. Von diesem Objekt willst du nun die Eigenschaft .Row, dies es natürlich nicht gibt, wenn keine Range retourniert wurde. Du musst das anders angehen, nämlich so ähnlich, wie das Beispiel in der VBA Hilfe zeigt.
Dim c as Range
Set c = ... .Find(What:=.Offset(, -1).Value, Look...)
If Not c Is Nothing Then
Msgbox c.Row
else
Msgbox "DA IS NIX!"
end if
Gruess Hansueli
Anzeige
AW: is Nothing abfangen bei Find Befehl
04.03.2019 13:51:39
Zwenn
Hallo Martin,
ändere die Struktur Deines Codes folgendermaßen ab:

Dim suchErgebnis as Range
Set suchErgebnis = Worksheets("WERBER_Ueberschriften").Columns(5).Find _
(What:=.Offset(, -1).Value, LookAt:=xlWhole, SearchDirection:=xlNext)
If Not suchErgebnis is Nothing Then
'mach was mit suchErgebnis.row (wenn ich richtig damit liege, dass Du auf die Zeile raus  _
willst)
End If
Viele Grüße,
Zwenn
AW: is Nothing abfangen bei Find Befehl
04.03.2019 14:03:34
Martin
Super vielen Dank. Das mit dem Range Object setzen hatte ich auch schon ausprobiert, aber den selben Abbruch bekommen. Das es nun an dem .Row lag, da wär ich nie drauf gekommen! Da hilft mir aber ehrlich gesagt auch die Hilfefunktion nicht weiter...
Danke für die Hilfe!!!
Gruß Martin
Anzeige
Nothing hat nun mal keine Eigenschaften
04.03.2019 14:27:01
EtoPHG
Martin,
Und die Hilfe sagt im ersten Satz der Hinweise klar und deutlich: Wenn keine Übereinstimmung gefunden wird, gibt diese Methode Nothing zurück.
Du musst Dir den Unterschied von Objekten, Methoden, Eigenschaften aneignen. Eigenschaften kann es in einem Objekt zu Hunderten geben. Row ist nur eine davon. Nothing ist ein Zustand eines Objekts und hat keine Eigenschaften!
Gruess Hansueli

77 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige