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

Worksheet_SelectionChange

Forumthread: Worksheet_SelectionChange

Worksheet_SelectionChange
07.11.2007 18:50:00
Sonnenpeter
Hallo,
ich habe mir mit Unterstützung des Forums nachfolgendes Makro aufgebaut funzt einwandfrei :-)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("$B$5:$B$49")) Is Nothing Then
Me.Shapes("Listenfeld1").Visible = False
Else
Me.Shapes("Listenfeld1").Visible = True
MeldungListenfeld1
position_Listenfeld1
End If
If Intersect(Target, Range("$C$5:$C$49")) Is Nothing Then
Me.Shapes("Listenfeld2").Visible = False
Else
Me.Shapes("Listenfeld2").Visible = True
MeldungListenfeld2
position_Listenfeld2
End If
End Sub


Nun zu meinen Problem:
Wenn ich zellen im Bereich B und C gleichzeitig makiere erschein eines der oben genannten Listenfelder (je nach dem ob ich mit einer B- oder C-Zelle beginne).
Das sollte nach möglichkeit nicht geschehen.
Der nachfolgende von mir gebastelte Zusatz
If Intersect(Target, Columns("B:C")) Is Nothing Then
Me.Shapes("Listenfeld1").Visible = False
Me.Shapes("Listenfeld2").Visible = False
End If
gibt zwar keine Fehlermeldung funktioniert aber auch nicht.
Wie kann ich das Einblenden der Listenfelder verhindern wenn Zellen im Bereich B unb C gleichzeitig makiert sind.
Gruß Sonnenpeter

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Worksheet_SelectionChange
07.11.2007 19:34:00
Tino
Hallo,
versuche es mal mit dieser Lösung.

Dim isect1, isect2 As Object
Set isect1 = Application.Intersect(Target, Range("A:A"))
Set isect2 = Application.Intersect(Target, Range("C:IV"))
If isect1 Is Nothing And isect2 Is Nothing Then
Me.Shapes("Listenfeld1").Visible = False
Me.Shapes("Listenfeld2").Visible = False
Else
If Intersect(Target, Range("$B$5:$B$49")) Is Nothing Then
Me.Shapes("Listenfeld1").Visible = False
Else
Me.Shapes("Listenfeld1").Visible = True
MeldungListenfeld1
position_Listenfeld1
End If
If Intersect(Target, Range("$C$5:$C$49")) Is Nothing Then
Me.Shapes("Listenfeld2").Visible = False
Else
Me.Shapes("Listenfeld2").Visible = True
MeldungListenfeld2
position_Listenfeld2
End If
End If


Gruss
Tino

Anzeige
AW: Worksheet_SelectionChange
07.11.2007 19:56:00
Sonnenpeter
Hallo Tino,
funktioniert leider nicht.
Listenfeld1 wird gar nicht gezeigt.
Wenn ich B und C wähle erscheint Listenfeld2
Trotzdem Danke für die Hilfestellung!
Gruß Sonnenpeter

AW: Worksheet_SelectionChange
07.11.2007 20:32:00
Erich
Hallo Sonnenpeter,
versuch mal

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Columns(2)) Is Nothing Or _
Intersect(Target, Columns(3)) Is Nothing Then
If Intersect(Target, Range("$B$5:$B$49")) Is Nothing Then
Me.Shapes("Listenfeld1").Visible = False
Else
Me.Shapes("Listenfeld1").Visible = True
MeldungListenfeld1
position_Listenfeld1
End If
If Intersect(Target, Range("$C$5:$C$49")) Is Nothing Then
Me.Shapes("Listenfeld2").Visible = False
Else
Me.Shapes("Listenfeld2").Visible = True
MeldungListenfeld2
position_Listenfeld2
End If
Else
Me.Shapes("Listenfeld1").Visible = False
Me.Shapes("Listenfeld2").Visible = False
End If
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
Das war es..............
07.11.2007 20:39:00
Sonnenpeter
Hallo Erich,
das funktioniert :-)
Recht herzlichen Dank / Sonnenpeter
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige