Board logo

標題: 請教ComboBox_Change的問題 [打印本頁]

作者: yen956    時間: 2017-2-28 13:23     標題: 令人困惑的ActiveX ControlBox

本帖最後由 yen956 於 2017-2-28 13:26 編輯

由於小弟先前製作的 Jenpu30 按鈕實在太多了,
如下圖
[attach]26731[/attach]
Jenpu40 版又想增加一些按鈕, 因此想用 下拉式選單,
把按鈕歸類到 Active ComboBox 中, 如下圖
[attach]26732[/attach]
沒想到郤發生新的問題,不知如何解決,
1. 另存新檔 時
2. 更改 工作表名 時
3. 複製工作表 時
4. (應該還有...)
均會莫明奇妙的從ComboBox複製一些文字到ActiveCell中
雖然有 自製按鈕 解決部問題, 但總不是好辦法,
不知有什麼好方法?
如下圖
[attach]26733[/attach]
作者: yen956    時間: 2017-2-28 13:42

補檔, 如果純測試Active ComboBox 的 VBA, 可不必安裝字型,謝謝!!
[attach]26734[/attach]
作者: jackyq    時間: 2017-2-28 16:06

[attach]26736[/attach]

可能有更簡單的方式
作者: jackyq    時間: 2017-2-28 16:37

1111  Timer 的跨日問題 , 可以解決
但他依然不是一個100%可靠方式

你可以考慮不要把 combobox 的起始化動作綁定在 ListFillRange
改成你自己用程式去做起始化動作
作者: yen956    時間: 2017-2-28 17:25

本帖最後由 yen956 於 2017-2-28 17:27 編輯

回復 4# jackyq
你是說:
Private Sub ComboBox1_Change()
comboBox1.Items.Add(new Item(..., 1));...
...
End Sub
嗎? 但 一旦啟動ComboBox1_Change()
就會從頭到尾執行一遍,不是嗎?
有一個方法, 就是要求使用者
避開 ComboBox 的執執區,
即先在灰色區點一下, 再按 [檔案]-->[另存新檔],
這也是我的自製按鈕 [另存新檔] 的方法,
但要求使用者如此操不是很奇怪的方法嗎?!
作者: yen956    時間: 2017-2-28 18:08

本帖最後由 yen956 於 2017-2-28 18:15 編輯

回復 3# jackyq
非常感謝 jackyq 大大的指導, 經過測試, 一切正常, 不再有奇怪的事情發生了, 謝謝!!
只是程式碼有點難解, 先照抄再慢慢研究啦!!
(補編)現在才發現 3F, 4F 都是大大的傑作, 失禮.
3F的方法可解決目前的困惑, 有新問題再說, 4F的方法應該行不通.
再次謝謝您!!
作者: yen956    時間: 2017-3-1 12:07

回復 4# jackyq
原來是我想錯了, 還是大大說的
""你可以考慮不要把 combobox 的起始化動作綁定在 ListFillRange
改成你自己用程式去做起始化動作"" 才對,
試過了, 用 Workbook_Open
去做起始化動作不要與 ListFillRange 綁定, 則
另存新檔 或 更改 工作表名  或 複製工作表 時
均不會觸動 ComboBox_Change。
謝謝大大的指教!!
作者: yen956    時間: 2017-3-8 19:19     標題: 請教ComboBox_Change的問題

本帖最後由 yen956 於 2017-3-8 19:20 編輯

請教諸位大大:
ComboBox_Change須在內容改變時才觸動VBA,
希望能有內容變不變均能觸動VBA的方法,
如下圖所示
[attach]26786[/attach]
因為內容改變時才觸動VBA, 對使用者來說, 並不方便,
如下圖所示
[attach]26784[/attach]
附檔在
http://forum.twbts.com/thread-19341-1-1.html的 2f
謝謝諸位大大
作者: jackyq    時間: 2017-3-10 22:53

[attach]26793[/attach]
作者: yen956    時間: 2017-3-11 19:17

回復 9#
謝謝大大再三指導, 果然可用但只能照抄, 謝謝!!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)