HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Forumbeitrag
Excel-Version des Fragestellers:
365 Business
Erfahrungslevel des Fragestellers:
Excel gut - VBA bescheiden
Alwin Weisangler
11.03.2025 10:34:29
AW: Change-Ereignis bei generierten ComboBoxes
Hallo Andreas,

lade mal hoch, was du hast. Die Klasse einbauen ist, um das Change Ereignis auszuwerten, eigentlich nicht kompliziert. Man muss nur verstehen was eine Klasse ist.
Vor einigen Tagen hatte ich hier mal in einem Userform Klassen für Listboxen, Textboxen und Checkboxen eingebaut:
https://www.herber.de/forum/archiv/2004to2008/2007470_Funktionelles_kopieren_von_MultiPagePages.html#2007683

Gruß Uwe
Als Antwort auf diesen Beitrag
AndreasH86
11.03.2025 09:30:20
Change-Ereignis bei generierten ComboBoxes
Hallo,

ich erzeuge per Excel-Makro je nach Listenlänge eine Anzahl von ComboBoxes in einer UserForm (es handelt sich um einen Auszug der relevanten Passage):

Private Sub UserForm_Initialize()


Dim Box, Label As Control
Dim endRowA As Long
Dim arr As Variant

endRowA = Sheets("Array").Cells(Rows.Count, 1).End(xlUp).Row

ReDim arr(1 To endRowA)

If Sprache = "DE" Then
For z = 1 To endRowA
arr(z) = Sheets("Array").Cells(z, 1).Value
Next z
End If

a = 0
For z = 1 To endRowA
Set Label = UserForm2.Controls.Add("Forms.Label.1", "Label" & z, True)
Label.Left = 25
Label.Top = 36 + a
Label.Width = 96
Label.Height = 15.75
Label.Caption = z & " - "

Set Box = UserForm2.Controls.Add("Forms.ComboBox.1", "ComboBox" & z, True)
Box.Left = 48
Box.Top = 36 + a
Box.Width = 186
Box.Height = 15.75
Box.Object.List = arr
a = a + 24
Next z

CommandButton1.Left = 78
CommandButton1.Top = a + 60

UserForm2.Height = z * 24 + 36 + 60 + 20


Nun möchte ich für die ComboBoxes ein Change-Ereignis abgreifen mit dem Ziel, dass die bereits ausgewählten Einträge in den ComboBoxen in den folgenden CBO nicht mehr auswählen kann - also das Array nach jeder Auswahl verändere.
Soweit ich mich bisher belesen habe, geht das nur mit einem Klassenmodul, womit ich bisher noch nicht in Berührung kam.

Wie erstelle ich ein solches Change-Ereignis?

Viele Grüße
Andreas
Folgenachrichten
Antwort auf Beitrag erstellen

Beispieldatei hochladen