2013-03-03 3 views
0

В VB для приложений, у меня есть этот код:Update выпадающий на основе выбора другого задаете здесь же

Private Sub cc_Change() 

End Sub 

Private Sub UserForm_Initialize() 
    cc.AddItem "op1" 
    cc.AddItem "op2" 
    cc.AddItem "op3" 
    cc.AddItem "op4" 

End Sub 

Вышеуказанные работы.

Я хотел бы продолжить разработку этого, поэтому, когда вы нажимаете «op1», вы получаете связанные параметры, это код, который у меня есть до сих пор;

Private Sub combo2_Change() 
    If cc = "op1" Then 
    Me.combo2.RowSourceType = "Value List" 
    Me.combo2.RowSource = "a; b; c" 
    Else 
    Me.combo2.RowSourceType = "Value List" 
    Me.combo2.RowSource = "default" 
    End If 
End Sub 

Я перечислил только «op1», поскольку он был бы переносимым. Пожалуйста, вы можете мне помочь, когда я выбираю «op1», я не получаю значения «a» «b» или «c»

ответ

0

Если я правильно понял, вам нужно написать код для события изменения первый комбинированный блок (cc) внутри своего события изменения. Попробуйте сделать следующее:

Private Sub cc_Change() 
    If cc = "op1" Then 
     Me.combo2.RowSourceType = "Value List" 
     Me.combo2.RowSource = "a; b; c" 
    Else 
     Me.combo2.RowSourceType = "Value List" 
     Me.combo2.RowSource = "default" 
    End If 
End Sub 
0

В частном к югу от cc_Change() Используйте это:

If cc = "op1" Then 
     combo2.AddItem "a" 
Else 
     combo2.AddItem "default" 
End If 
Смежные вопросы