標題:
[發問]
ComboBox 和 ToggleButton
[打印本頁]
作者:
jesscc
時間:
2011-9-30 23:59
標題:
ComboBox 和 ToggleButton
本帖最後由 jesscc 於 2011-10-1 00:42 編輯
最近練習 ComboBox 和 ToggleButton 這兩種物件的用法,碰到一些問題無法解決
功能
ToggleButton1:
按下後,其他兩個 ToggleButton 自動彈起失效,然後分別選擇兩個 ComboBox 的值,接著在框線範圍內,點選任意儲存格都會將 ComboBox1 & ComboBox2 的文字填入儲存格中
ToggleButton2:
按下後,其他兩個 ToggleButton 自動彈起失效,然後在框線範圍內,點選任意儲存格,填入黃底斜線格式
ToggleButton3:
按下後,其他兩個 ToggleButton 自動彈起失效,然後在框線範圍內,點選任意儲存格,填入黃底X線格式
"任一 ToggleButton 按下後,其他兩個 ToggleButton 自動彈起失效" 這個功能一直試不出來,而且程式執行不正常,可以教教我如何修改嗎?
[attach]8064[/attach]
作者:
luhpro
時間:
2011-10-1 17:44
回復
1#
jesscc
以下程式放在 "工作表1"
Private Sub ToggleButton1_Click()
If ToggleButton1 = True Then
ToggleButton2 = False
ToggleButton3 = False
End If
End Sub
Private Sub ToggleButton2_Click()
If ToggleButton2 = True Then
ToggleButton1 = False
ToggleButton3 = False
End If
End Sub
Private Sub ToggleButton3_Click()
If ToggleButton3 = True Then
ToggleButton1 = False
ToggleButton2 = False
End If
End Sub
Sub ComBoxInit() ' 另外新增此部份程式, ComBox 給初值, 只要於開啟檔案時執行一次即可
ComboBox1.List = Array("夢", "八德", "義", "巨", "樂", "糖", "中鋼", "新人訓", "實習", "自訂")
ComboBox2.List = Array("9-17", "9-21", "9-2230", "10-22", "1030-22", "1030-2230", "11-17", "11-22", "11-2230", "12-17", "12-20", "12-22", "12-2230", "14-22", "14-2230", "18-22", "19-22", "自訂")
End Sub
複製代碼
以下程式放在 "ThisWorkBook"
Private Sub Workbook_Open()
Call Sheets("工作表1").ComBoxInit
End Sub
複製代碼
作者:
jesscc
時間:
2011-10-1 22:14
回復
2#
luhpro
謝謝 luhpro 大,基本功能已經達到我所要的效果了。
至於 Combobox 初始值的設定,好像沒有什麼作用。
作者:
luhpro
時間:
2011-10-2 12:02
回復 luhpro
謝謝 luhpro 大,基本功能已經達到我所要的效果了。
至於 Combobox 初始值的設定, ...
jesscc 發表於 2011-10-1 22:14
應該並不是沒什麼作用,
只要點開下拉式選單應該就會看到加入的選項內容.
上述程式在加上選項內容後沒有給定有秀文字的初值,
所以未操作前看起來沒內容.
Sub ComBoxInit()
With ComboBox1
.List = Array("夢", "八德", "義", "巨", "樂", "糖", "中鋼", "新人訓", "實習", "自訂")
.Text = "自訂"
End With
With ComboBox2
.List = Array("9-17", "9-21", "9-2230", "10-22", "1030-22", "1030-2230", "11-17", "11-22", "11-2230", "12-17", "12-20", "12-22", "12-2230", "14-22", "14-2230", "18-22", "19-22", "自訂")
.Text = "自訂"
End With
End Sub
複製代碼
這樣就有初值了.
另外, 因為 ComboBox 的初始化是在 Workbook_Open 上執行,
所以程式異動後必須再執行一次 Workbook_Open,
或是關閉 Excel 檔案重開後新的程式才有效喔.
作者:
Hsieh
時間:
2011-10-2 13:18
回復
3#
jesscc
讓Combobox取得焦點時設置清單內容
Private Sub ComboBox1_GotFocus()
ComboBox1.List = Array("夢", "八德", "義", "巨", "樂", "糖", "中鋼", "新人訓", "實習", "自訂")
End Sub
Private Sub ComboBox2_GotFocus()
ComboBox2.List = Array("9-17", "9-21", "9-2230", "10-22", "1030-22", "1030-2230", "11-17", "11-22", "11-2230", "12-17", "12-20", "12-22", "12-2230", "14-22", "14-2230", "18-22", "19-22", "自訂")
End Sub
作者:
jesscc
時間:
2011-10-2 15:38
嗯!可以了!
謝謝 l 大和 H 大的教導!
作者:
SWRovers
時間:
2014-11-14 14:58
謝謝,算是學習到了,但是有個疑問,如果資料非常的多,那應該如何修改?
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)