2016-08-23 1 views
1

Ich bin neu in VBA und habe einige Probleme mit einem Benutzerformular. Ich versuche es so, dass, wenn eine Auswahl in einer Combobox einen bestimmten Buchstaben enthält, eine Optionsschaltfläche ausgewählt wird.Verwenden einer Combobox zum Auswählen und Optionsfeld in Excel Benutzerformular

ist der Code, den ich versucht habe zu verwenden: -

Private Sub ComboBox1_Change() 
If ComboBox1.Value = "*C*" Then 
    OptionButton3.Value = True 
    End If 
If ComboBox1.Value = "FR 850 C BLUE" Then 
    TextBox2.Value = "BLUE" 
    End If 
If ComboBox1.Value = "FR 850 C WHITE" Then 
    TextBox2.Value = "WHITE" 
    End If 
End Sub 

jedoch TextBox2 wie folgt nur sichtbar ist:

Private Sub OptionButton3_Click() 
TextBox2.Visible = True 
With Me.TextBox2 
    .Value = "Colour here" 
    .SetFocus 
    .SelStart = 0 
    .SelLength = Len(.Text) 
End With 
End Sub 

Siehe this printscreen (siehe unten) von der Userform, wenn eine Option enthalten, "C" ist ausgewählt - OptionButton3 bleibt nicht ausgewählt.

printscreen

Auch ich habe Code versucht, so dass, wenn "FR 850 C BLUE" gewählt, TextBox2 "BLUE" zeigen wird. Ich vermute, sobald ich einen Fix zum ersten Teil finden wird dies besser funktionieren, aber, wie this printscreen (siehe unten) zeigt, wenn OptionButton3 nach "FR 850 C BLUE" in Combobox1, TextBox2 nicht zeigt "BLAU", als Ich würde es wünschen.

printscreen

Kann jemand helfen? Ich vermute, ich habe etwas irgendwo verpasst ...

Alle/alle Kommentare willkommen!

Antwort

1

Sie besagt:

If ComboBox1.Value = "*C*" Then 

Das bedeutet, wenn ComboBox1.Value"*C*" etwas tun, entspricht.
Um zu überprüfen, ob ein Wert teilweise entspricht, die Sie verwenden Like:

If ComboBox1.Value Like "*C*" Then 
+0

Vielen Dank, die sortiert es! :) – StanB

Verwandte Themen