Klar geht das. Die Combobox lässt in der Standardeinstellung jeden beliebigen Wert zu. Egal ob dieser in der Liste steht oder nicht. Wenn du das verhindern willst, gibt's zum einen die Eigenschaft MatchRequired die du auf True setzen kannst. Dann wird dir zwar bei jeder Falscheintragung eine Fehlermeldung "Ungültiger Eigenschaftenwert" angezeigt, aber der falsche Wert bleibt trotzdem drin und kann ausgelesen werden. Wenn du Falscheinträge komplett verhindern willst, geht das nur über das Change-Ereignis.
Private Sub coboU1_Change()
If coboU1 <> "" And coboU1.ListIndex = -1 Then coboU1 = ""
End Sub
Private Sub UserForm_Initialize()
Dim listArr As Range
Set listArr = Range("A1:A4")
coboU1.List = listArr.Value
coboU1.Value = "Bitte wählen Sie"
End Sub
Gruß Mr. K.
|