作者anhbclbe (Crush)
看板Office
標題[算表] EXCEL VBA 的combobox 兩層(關聯)選單
時間Thu Apr 12 11:35:41 2018
軟體: EXCEL
版本:2010
各位好
我在EXCEL VBA建了一個userform,裡面有兩個選單(combobox)
我在UserForm_Initialize 建立了combobox的內容
ComboBox1.AddItem "A"
ComboBox1.AddItem "B"
ComboBox2.AddItem "A-1"
ComboBox2.AddItem "A-2"
ComboBox2.AddItem "B-1"
ComboBox2.AddItem "B-2"
ComboBox2.AddItem "B-3"
目的是希望,當選單1做出選擇時,選單2會相對應的做出調整,例如:
選單1是A,選單2就可以有A-1、A-2可以選
選單1是B,選單2就可以有B-1、B-2、B-3可以選
但這樣的寫法弄在UserForm_Initialize是不行的
我在combobox1_change裡面用if 寫,也是不行
之前用EXCEL可以寫出兩層(關聯)式選單,但這次只能用VBA,不能用到EXCEL儲存格
請問一下,該如何在VBA裡面達成這樣兩層式的選單呢?
以上
謝謝
--
落霞與孤鶩齊飛 秋水共長天一色
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.251.190.44
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1523504169.A.0C2.html
1F:→ soyoso: 不行指的是什麼,出現錯誤?無法達到希望結果? 04/12 11:59
2F:→ soyoso: 測試UserForm_Initialize時combobox1新增A,B 04/12 12:00
3F:→ soyoso: combobox1_change時先clear,再以原文寫到的if來新增,是 04/12 12:01
4F:→ soyoso: 可行的 04/12 12:01
5F:→ soyoso: change內執行動作為選單2的部分 04/12 12:07
6F:→ newacc: ComboBox2的東西可以不用寫在UserForm_Initialize裡面 04/12 14:49
7F:→ newacc: 同S大,用ComboBox1_Change的事件,先判斷ComboBox1選取的 04/12 14:50
8F:→ newacc: 內容,再決定ComboBox2裡面要AddItem哪些東西 04/12 14:50
9F:→ anhbclbe: 感謝S大雨N大,小弟寫出來了,原來是我寫錯位置 04/13 13:00
10F:→ anhbclbe: 而且clear是要對combobox2,不然會選項會一直累加 04/13 13:01