Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Intersect?

Forumthread: Intersect?

Intersect?
08.07.2025 16:28:07
NicoHendrik
Hallo

Wenn ich eine Selection außerhalb M9:NN28 beginne und innerhalb M9:NN28 beende,
kommt die MsgBox. Andersum aber nicht.

Habt ihr für mich da eine Lösung

Gruß Nico

Sub Farbe1()

If Intersect(Range("M9:NN28"), ActiveCell) Is Nothing Then
MsgBox "Die Auswahl befindet sich nicht im erlaubten Bereich!", vbCritical
Else

Selection = 1

End If

End Sub
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Intersect
08.07.2025 16:48:41
RPP63
Moin!
Wenn Du eine Selection mit der Maus oder Tastatur "aufziehst", ist die erste Zelle die ActiveCell.
Insofern macht Dein Makro, was es soll.
Dann also eher Selection statt ActiveCell nehmen.

Gruß Ralf
AW: Union?
08.07.2025 17:45:57
GerdL
Moin NIcoHendrik!
Sub Unit()


Const cAdresse As String = "$M$9:$NN$28"

If TypeOf Selection Is Range Then

If Union(Selection, Range(cAdresse)).Address > cAdresse Then
MsgBox "Die Auswahl befindet sich nicht" _
& "im erlaubten Bereich!", vbCritical
Else
Selection = 1
End If

End If

End Sub

Gruß Gerd
Anzeige
Spasseshalber...
08.07.2025 19:27:53
Yal
Moin,

Sub Unit()

Dim Ueberlappung As Range
Const cAdresse = "$M$9:$NN$28"

Set Ueberlappung = Intersect(Selection, Range(cAdresse))
If Ueberlappung Is Nothing Then
MsgBox "Die Auswahl befindet sich vollständig ausserhalb des Zielbereichs"
Else
If Ueberlappung.Cells.Count = Selection.Cells.Count Then
MsgBox "Die Auswahl befindet vollständig im Zielbereich"
Else
MsgBox "Die Auswahl befindet sich teils im, teils ausserhalb des Zielbereichs"
End If
End If
End Sub


VG
Yal
Anzeige
AW: Spasseshalber...
08.07.2025 19:54:01
NicoHendrik
Danke Yal,

ich hab schon die Lösung bekommen.

Gruß Nico
AW: Union?
08.07.2025 18:16:31
NicoHendrik
Danke Gerd, klappt prima.

Grüsse aus Namibia
AW: Intersect
08.07.2025 17:22:29
NicoHendrik
Hallo Ralf,
klappt leider nicht. Die MsGBox kommt jetzt gar nicht mehr

Gruß Nico
Anzeige
AW: Intersect
08.07.2025 18:15:37
heli
Hi,

das liegt an der Programmierung:

If Intersect(Range("M9:NN28"), Selection) Is Nothing


Liefert nur dann WAHR wenn die Selektion AUßERHALB des Bereiches liegt (Du prüfst ja auf "is Nothing")
Intersect prüft ob eine Überschneidung vorliegt > wenn Du die MsgBox haben willst sobald die Selektion mit dem angegebenen Bereich eine Überschneidung hat musst Du die Bedingung umstellen:

If NOT Intersect(Range("M9:NN28"), Selection) Is Nothing


Servus, heli
Anzeige
AW: Intersect
08.07.2025 18:25:33
NicoHendrik
Danke Heli, auch deine Lösung funktioniert
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18