Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
956to960
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
956to960
956to960
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Denkfehler in WENN/ ODER/ UND VBA Zeile

Denkfehler in WENN/ ODER/ UND VBA Zeile
05.03.2008 19:22:01
Andreas
Hallo Herber Unermüdliche,
Ich hänge mich gerade an einer verschachtelten Wenn mit ODER/ UND Funktion in VBA auf. Ich bekomme es einfach nicht hin.

If Not ((Intersect(Target, Range("TEST1")) Is Nothing)) Or ((Intersect(Target, Range("TEST2"))  _
Is Nothing)) And Target.Row > 15 Then …


Wenn In „Test1“ oder In „Test2“ etwas passierte UND aber die jeweils angesprochene Targetzeile größer 15 ist, dann…
Es wird nur jeweils ein Range angesprochen.
Mir brennen schon die Augen und ich sehe den Wald vermutlich vor lauter Bäumen nicht. Ich würde mich sehr freuen, wenn mich jemand auf den kleinen Fehler in meiner Denkweise aufmerksam macht…
Vielen Dank und Grüße, Andreas Hanisch

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Denkfehler in WENN/ ODER/ UND VBA Zeile
05.03.2008 19:26:32
Hajo_Zi
Hallo Andreas,
Nothing kannst Du nur bei Objekten.

If I(ntersect(Target, Range("TEST1"))=0 OrIntersect(Target, Range("TEST2"))=0) And Target.Row >  _
15 Then …



AW: Denkfehler in WENN/ ODER/ UND VBA Zeile
05.03.2008 19:50:01
Andreas
Hallo Hajo,
vielen Dank für Deine Antwort. Ich habe Deine Zeile verwendet und bekomme nun leider die Debugger Meldung „Laufzeitfehler 91. Objektvariable oder With Block Variable nicht festgelegt“.
Meine CodeZeile:

If (Intersect(Target, Range("TEST1")) = 0 Or Intersect(Target, Range("TEST2")) = 0) And Target. _
Row > 15


Das Modell mit “If not intersect is nothing” habe ich an anderer Stelle schon erfolgreich im Einsatz. Einzige Neuerung bei dieser Zeile ist die ODER/ UND Verknüpfung.
Hast Du eine Idee, warum die Debugger Meldung nun kommt? Alle Rangedefinitionen sind im Blatt vorhanden
Vielen Dank und Gruß, Andreas

Anzeige
geht es so ?
05.03.2008 19:38:53
Matthias
Hallo Andreas

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Union(Range("Test1"), Range("Test2"))) Is Nothing And Target.Row > 15  _
Then
MsgBox "Bedingung erfüllt"
End If
End Sub


Gruß Matthias

AW: geht es so ?
05.03.2008 19:54:00
Andreas
Hallo Matthias,
ich habe es gerade getestet und es sieht nach einer Punktlandung aus. Funktioniert!
Ich kannte die UNION Methode bisher überhaupt nicht. Genial. Wieder etwas gelernt. Aber ich fürchte VBA ist sooooo ein weites Feld. Alles wird man nie wissen...
Grüße aus Berlin, Andreas Hanisch

Anzeige
freut mich, wenn ich helfen konnte :o) __oT
05.03.2008 20:01:39
Matthias

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige