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

Zelle in Bereich?

Zelle in Bereich?
Weeze
Hallo!
Habe mal eine Frage:
Kann ich mit VBA eine Abfrage machen ob eine Zelle in einem definierten Bereich liegt, dem ich zuvor einen Namen zugewiesen habe?
In etwa:
if activecell.range = xy then
aber so funktioniert das nicht!
Danke im voraus für eure Mühe!

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zelle in Bereich?
Boris
Hi (Name?!?)

Sub Ueberschneidung()
MsgBox Not Intersect(Range("E1"), Range("Bereich")) Is Nothing
End Sub

WAHR, wenn E1 Teil des Bereiches mit dem Namen 'Bereich' ist - ansonsten FALSCH.
Grüße Boris
AW: Zelle in Bereich?
Weeze
Schonmal vielen Dank, Boris!!
(sry Name hab ich vergessen, steht aber auch immer oben in der Leiste, oder?)

Sub Ueberschneidung()
MsgBox Not Intersect(Range("E1"), Range("Bereich")) Is Nothing
End Sub

Und wie muss ich das dann eingeben wenn ich an Stelle von "E1" schauen will ob die aktive Zelle in dem Bereich liegt?
Gruß Weeze
(diesmal nicht vergessen)
Anzeige
AW: Zelle in Bereich?
Boris
Hi Weeze (hab das nicht für nen Vornamen gehalten...)

Sub Ueberschneidung()
MsgBox Not Intersect(ActiveCell, Range("Bereich")) Is Nothing
End Sub

Grüße Boris
AW: Zelle in Bereich?
20.04.2004 10:17:20
Weeze
Super!
Jetzt hat es geklappt!
Vielen Dank!!
AW: Zelle in Bereich?
Weeze
Hey.
Wie du bestimmt schon merkst, hab ich nicht viel Ahnung. Deswegen hab ich noch eine Frage:
Ich will daraus jetzt eine Abfrage machen. Dachte ich könnte jetzt einfach
sub Ueberschneidung()
if intersect(activecell, range("bereich") then
...
end if
endsub
aber dann kommt der Fehler:
Laufzeitfehler 1004:
Die Methode 'Range' ist für das Objekt '_Worksheet' ist fehlgeschlagen!
Warum das?
Anzeige
AW: Zelle in Bereich?
Boris
Hi Weeze,
die Intersect-Methode gibt ein Range-Objekt zurück - und ein solches enthält eben einen Bereich oder "Is Nothing".
Um dann zu prüfen, ob die Zelle innerhalb liegt, wendet man die doppelte Verneinung an, indem man fragt:
Wenn die Überschneidung (Intersect) nicht Nichts ist, dann mach jenes...
If Not Intersect(ActiveCell, Range("Bereich")) Is Nothing then
'mach dies
Else
'mach das
End If
Grüße Boris
AW: Zelle in Bereich?
Weeze
Bekomme nun aber immernoch den Fehler: "Die Methode 'Range' ist für das Objekt '_Worksheet' ist fehlgeschlagen!"
Habe die Bereiche nur unter Excel mit Name zuweisen erstellt. Ist das vielleicht der Fehler?
Wenn ja, wie muss ich das sonst machen?
Gruß
Weeze
Anzeige
Das muss gehen...
Boris
Hi,

Sub DoIt()
If Not Intersect(ActiveCell, Range("Bereich")) Is Nothing Then
MsgBox "Innerhalb"
Else
MsgBox "Außerhalb"
End If
End Sub

Wenn dein Name auch 'Bereich' lautet, dann muss das gehen...
Grüße Boris
AW: Das muss gehen...
Weeze
Hi,
habe das jetzt mal gerade in einer anderen Tabelle ausprobiert und da funktioniert es auch, aber nur solange command Button mit dem ich die Überprüfung auslöse auch auf der Seite ist auf der der Bereich ist. Ist das irgendwie verständlich? Für mich nicht, aber ich habe auch nicht soviel Ahnung.
Habe auch schon probiert die Abfrage so zu machen:
If Not Intersect(ActiveCell, worksheets(x).Range("Bereich")) Is Nothing Then
aber es geht trotzdem nicht...
Wäre nett wenn mir das einer erklären könnte!
Danke
Gruß Weeze
Anzeige
AW: Das muss gehen...
Ulf
Die ActiveCell kann immer nur auf dem gerade aktiven Blatt sein.
Ansonsten musst du den Blattnamen und die Zelladresse angeben.
Ulf

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige