Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Comboboxen_change unterdrücken

Forumthread: Comboboxen_change unterdrücken

Comboboxen_change unterdrücken
23.02.2021 14:07:42
Walter
Hallo zusammen,
ich versuche Comboxen so nutzen, dass wenn aus Combox A ein Wert gewählt wird, die Comboxen B und C geleert werden. Durch jede Veränderung in den Comboboxen wird deren Code aufgerufen, die würde ich gerne über ein Boolean Event unterdrücken. Daher zwei Codes, einmal der in einem allgemeinen Modul:

Public NoEvent1 As Boolean
Sub test1()
NoEvent2 = False
ThisWorkbook.Worksheets("B").ComboBox2.Value = ""
NoEvent2 = True
End Sub
Und der in dem Arbeitsblatt, der das löschen vornimmt:

Private Sub ComboBox1_Change()
Dim NoEvent1 As Boolean
If NoEvent1 Then
Exit Sub
Else:
Sheets("B").Range("i2") = ComboBox1
If Sheets("B").ComboBox2  "" Then
Sheets("B").ComboBox2.Clear
End If
If Sheets("B").ComboBox3  "" Then
Sheets("B").ComboBox3.Clear
End If
End If
End Sub
Leider wird mir die NoEvent Variable aus dem Public Sub immer als falsch zurückgegeben, entsprechend funktioniert das unterdrücken nicht. Die beiden Codes gibt es natürlich je Combobox.
Könnt ihr mir sagen woran das liegt?
Danke und beste Grüße
Walter
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Comboboxen_change unterdrücken
23.02.2021 14:11:32
Walter
Und noch ein Zusatz.
Die Benennung ist nur hier falsch. Richtig ist natürlich.

Public NoEvent2 As Boolean

AW: Comboboxen_change unterdrücken
23.02.2021 14:28:52
ChrisL
Hi Walter
Wenn du NoEvent Public deklarierst, dann darfst du nicht innerhalb der Prozedur noch einmal deklarieren. Mittels Aktivierung von 'Option Explicit' wäre es dir aufgefallen.
Zudem wurde wahrscheinlich True und False vertauscht.
Vielleicht so...
Public NoEvent2 As Boolean
Private Sub ComboBox1_Change()
If NoEvent2 Then
Exit Sub
Else
With Sheets("B")
.Range("i2") = .ComboBox1
NoEvent2 = True
.ComboBox2.ListIndex = -1
.ComboBox3.ListIndex = -1
NoEvent2 = False
End With
End If
End Sub
Private Sub ComboBox2_Change()
If NoEvent2 Then
Exit Sub
Else
With Sheets("B")
.Range("i2") = .ComboBox2
NoEvent2 = True
.ComboBox1.ListIndex = -1
.ComboBox3.ListIndex = -1
NoEvent2 = False
End With
End If
End Sub
Private Sub ComboBox3_Change()
If NoEvent2 Then
Exit Sub
Else
With Sheets("B")
.Range("i2") = .ComboBox3
NoEvent2 = True
.ComboBox1.ListIndex = -1
.ComboBox2.ListIndex = -1
NoEvent2 = False
End With
End If
End Sub

cu
Chris
Anzeige
AW: Comboboxen_change unterdrücken
23.02.2021 16:29:55
Walter
Hi Chris,
super vielen Dank. Das hat mir geholfen.
Beste Grüße
Walter
;

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