2012-11-13 54 views
0

我有兩個組合框。第一個組合框包含三個項目:{One,Tow,Three}現在我想根據用戶在combobox1中選擇的內容加載第二個組合框。 例如,如果用戶從combobox1中選擇One,則namebox1將填充到combox2 ,如果用戶在from combobox2中選擇Two,則namebox2將填充到combox2等等。 您能否讓我知道我可以做些什麼這在VBA中?根據以前的Combobox1選擇填充Combobox2

感謝

以下是更新代碼:

Private Sub ComboBox1_Change() 
    Me.ComboBox2.Clear 
    Select Case Me.ComboBox1.Value 
     Case "One" 
     With Me.ComboBox2 
      .RowSource = "nameBox1" 
     End With 
     Case "Two" 
     With Me.ComboBox2 
      .RowSource = "nameBox1" 
     End With 
     Case "Three" 
     With Me.ComboBox2 
      .RowSource = "nameBox1" 
     End With 
    End Select 
    End Sub 

請指教,我沒有使用.addItem填充ComboBox1。它使用相同的方法填充.RowSource是usinf excel集合選擇框

回答

1

最簡單的方法是使用Select Case語句。 假設你有

Private Sub ComboBox1_Change() 

Me.ComboBox2.Clear 

Select Case Me.ComboBox1.Value 
    Case "One" 
     ' If your data was information you wanted to put in yourself: 
     With Me.ComboBox2 
      .AddItem "Adam" 
      .AddItem "Allen" 
      .AddItem "Andy" 
     End With 
    Case "Two" 
     ' If your data existed in a worksheet range 
     ComboBox2.RowSource = MyRange.Address    
     End With 
    End Select 

End Sub 

我希望這可以解釋足以讓你去 - 否則,我有點困惑 - 你能解釋一下你的NameBox在你的問題

+0

感謝約翰的意思,這正是我正在尋找 – user1760110

+0

以及名稱框是範圍選擇,我從表中可以找到這個地址的Youtube演示:http://www.youtube.com/watch?v=AWWKAWttuiU – user1760110

+0

嗨,再次約翰我不知道如果你有機會看看你管,但我收到錯誤信息,當我嘗試運行代碼爲:Private Sub ComboBox1_Change() Me.ComboBox2.Clear 選擇案例Me.ComboBox1.Value 案例 「一」 Me.ComboBox2.Clear ComboBox2.RowSource = 「nameBox1」 案 「防治疾病INC艾滋病毒/艾滋病」 Me.ComboBox2.Clear ComboBox2.RowSource =「nameBox2 「 結束選擇 結束Sub – user1760110

相關問題