我在VBA(Excel)中的MultiSelect ListBox中遇到問題。我希望用戶在列表框中選擇幾個選項,但他同時需要能夠切換窗口,以查找另一個程序中的選項。用戶切換窗口並返回到Excel時會出現問題。當他選擇一個選項時,那個在切換窗口之前被選作最後一個選項的選項會改變狀態(如果最後一個動作是選擇,則選項被取消選擇;如果最後一個動作未被選擇,則選擇該選項)。MultiSelect ListBox在Excel中切換窗口時會改變選項
例
我選擇A和B我切換窗口,然後返回到Excel。我點擊D並且B被取消選擇(在切換窗口之前最後選擇的選項)。這對用戶來說確實令人困惑。
任何人都知道這個問題的原因是什麼?有沒有辦法來解決這個問題?
所有列表框代碼:
Private Sub Worksheet_Activate()
Worksheets(1).ListBox1.Clear
ile = Worksheets(2).Range("b1").Value
For i = 1 To ile
Worksheets(1).ListBox1.AddItem (Worksheets(2).Range("b" + CStr(i + 2)))
Next i
End Sub
Private Sub ListBox1_GotFocus()
Application.ScreenUpdating = False
Range("a1").Select
End Sub
聚焦消失,但問題是不固定的
當窗口或列表框被關注時,是否有任何代碼被寫入? – shahkalpesh 2013-02-11 13:05:49
是否真的被取消選中,還是隻是突出顯示是錯誤的? – SeanC 2013-02-11 14:50:00
在shahkalpesh 有代碼: 私人小組ListBox1_GotFocus() Application.ScreenUpdating =假 範圍(「A1」)選擇 結束小組 重點消失,但問題是不固定的 |在肖恩·柴郡 突出顯示的選項是真的選中,所以突出顯示是正確的。 – 2013-02-11 17:18:39