2013-03-03 114 views
0

在VB中的應用我有這樣的代碼組合框:更新基於另一個組合框的選擇

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 
相關問題