[算表] 如何自動化更新下拉式選單內容?

作者: yimean (溫柔殺手)   2018-12-30 18:50:06
軟體:Excel
版本:2013
各位版上的大大好,小弟正在做一個供應商下拉式選單。
我有大約4-5個頁面會共用一份資料。
我目前是用Active X的下拉式選單。然後自己在程式碼中用AddItem去做。
可想而知,供應商會越來越多。我每次新增一個,就要打開這幾個頁面去新增Code。
感覺有點笨。
如果用表單控制項的方式,也是需要去更改每一個下拉式表單的範圍。
請問有沒有可以只做一次全體適用的方法呢?
煩請撥冗指導。感謝。
作者: soyoso (我是耀宗)   2018-12-30 19:21:00
不知道原po目前是怎麼寫的,就以原文來看也不清楚什麼是每次新增一個,就要打開這幾個頁面去新增code又什麼是只做一次全體適用的方法?適用在那?提供有巨集碼的檔案才會比較清楚要的是什麼
作者: yimean (溫柔殺手)   2018-12-30 19:58:00
@soyoso大大我更新資料了喔。
作者: soyoso (我是耀宗)   2018-12-30 20:01:00
寫個迴圈additem,迴圈終止值或最後一個有值的儲存格以range.end()、range.find或工作表函數counta抓取
作者: yimean (溫柔殺手)   2018-12-30 20:04:00
好的,感謝,我試試看。
作者: soyoso (我是耀宗)   2018-12-30 20:06:00
或是要以worksheet_change為觸發事件,當新增資料後,迴圈指定表單或activex控制項內listfillrange範圍字串範圍字串取得可用range.address
作者: yimean (溫柔殺手)   2018-12-30 20:46:00
@soyoso大大,我又更新資料了。
作者: soyoso (我是耀宗)   2018-12-30 20:54:00
再多傳個CLbox到sub AIR,AIR多設個變數接收.additem就以AIR所設 變數.additem
作者: yimean (溫柔殺手)   2018-12-30 21:05:00
Cool!!!大感謝。
作者: waiter337 (給開司一罐蘇格登)   2017-01-02 06:26:00
注意一個最大的問題 activeX 在不同的excel版本不相容也就是如果你要向下或向下相容 這按鈕會失效前提必須全部的人都要用2016以上的excel或全部都要2007的
作者: soyoso (我是耀宗)   2017-01-02 07:24:00
相容上測試,儲存於2016,開啟於2007或2010時,並不一定會失效 https://i.imgur.com/Jtzf37w.jpg
作者: waiter337 (給開司一罐蘇格登)   2017-01-02 18:51:00
s大 我前一星期才碰上的 我的是2019 64位元寫好放到2007 32位元 當下沒問題 使用了兩三天突然 按鈕直接消失 但實際上存在 而且無法用visible控制顯示就算重新寫上按鈕 還是消失而且 另一個按鈕是反過來 不消失 永遠消失不掉該頁面 我放上約15個activex的按鈕於工作表上
作者: soyoso (我是耀宗)   2017-01-02 19:00:00
這也就是為什麼我要回並不一定會失效,因版本的不同,不能
作者: waiter337 (給開司一罐蘇格登)   2017-01-02 19:00:00
而且會出現按鈕大小自動變大變小的問題
作者: waiter337 (給開司一罐蘇格登)   2017-01-02 19:02:00
瞭解 謝謝
作者: soyoso (我是耀宗)   2017-01-02 19:03:00
回文您可以舉例再何種情況下是可能會產生出失效,但要說是全部都要那個版本才是可行的話,個人覺得那不一定
作者: waiter337 (給開司一罐蘇格登)   2017-01-02 14:26:00
注意一個最大的問題 activeX 在不同的excel版本不相容也就是如果你要向下或向下相容 這按鈕會失效前提必須全部的人都要用2016以上的excel或全部都要2007的
作者: soyoso (我是耀宗)   2017-01-02 15:24:00
相容上測試,儲存於2016,開啟於2007或2010時,並不一定會失效 https://i.imgur.com/Jtzf37w.jpg
作者: waiter337 (給開司一罐蘇格登)   2017-01-03 02:51:00
s大 我前一星期才碰上的 我的是2019 64位元寫好放到2007 32位元 當下沒問題 使用了兩三天突然 按鈕直接消失 但實際上存在 而且無法用visible控制顯示就算重新寫上按鈕 還是消失而且 另一個按鈕是反過來 不消失 永遠消失不掉該頁面 我放上約15個activex的按鈕於工作表上
作者: soyoso (我是耀宗)   2017-01-03 03:00:00
這也就是為什麼我要回並不一定會失效,因版本的不同,不能
作者: waiter337 (給開司一罐蘇格登)   2017-01-03 03:00:00
而且會出現按鈕大小自動變大變小的問題
作者: waiter337 (給開司一罐蘇格登)   2017-01-03 03:02:00
瞭解 謝謝
作者: soyoso (我是耀宗)   2017-01-03 03:03:00
回文您可以舉例再何種情況下是可能會產生出失效,但要說是全部都要那個版本才是可行的話,個人覺得那不一定
作者: soyoso (我是耀宗)   2018-12-31 03:21:00
不知道原po目前是怎麼寫的,就以原文來看也不清楚什麼是每次新增一個,就要打開這幾個頁面去新增code又什麼是只做一次全體適用的方法?適用在那?提供有巨集碼的檔案才會比較清楚要的是什麼
作者: yimean (溫柔殺手)   2018-12-31 03:58:00
@soyoso大大我更新資料了喔。
作者: soyoso (我是耀宗)   2018-12-31 04:01:00
寫個迴圈additem,迴圈終止值或最後一個有值的儲存格以range.end()、range.find或工作表函數counta抓取
作者: yimean (溫柔殺手)   2018-12-31 04:04:00
好的,感謝,我試試看。
作者: soyoso (我是耀宗)   2018-12-31 04:06:00
或是要以worksheet_change為觸發事件,當新增資料後,迴圈指定表單或activex控制項內listfillrange範圍字串範圍字串取得可用range.address
作者: yimean (溫柔殺手)   2018-12-31 04:46:00
@soyoso大大,我又更新資料了。
作者: soyoso (我是耀宗)   2018-12-31 04:54:00
再多傳個CLbox到sub AIR,AIR多設個變數接收.additem就以AIR所設 變數.additem
作者: yimean (溫柔殺手)   2018-12-31 05:05:00
Cool!!!大感謝。

Links booklink

Contact Us: admin [ a t ] ucptt.com