本節說的是使用VBA實現下拉選單框的實現,同時下拉框顯示的數值是從另一個sheet中獲取。
實現效果
比如如下效果:
程式碼實現:
'重新整理ComboBox1內容
Private Sub ComboBox1_DropButtonClick()
ComboBox1.List() = get_arr("物流裝箱清單", 2, 1)
End Sub
- 第一行:
ComboBox1_DropButtonClick()
是ComboBox1控制元件下拉時候觸發的事件過程,只要觸發下拉動作就執行該過程程式碼; - 第二行:
get_arr("物流裝箱清單", 2, 1)
是自定義的函式,從“物流裝箱清單”工作表中第1列、第2行開始查詢,返回一個非重複陣列;
'定義一個函式:獲取sheet中的第幾列的非重複值
Private Function get_arr(sheet_name, row, col)
Dim dic, i
Set dic = CreateObject("scripting.dictionary") ' 建立字典
With Sheets(sheet_name)
For i = row To .Cells(Rows.Count, col).End(3).row
dic(.Cells(i, 1).Value) = ""
Next i
End With
get_arr = dic.keys
End Function
本作品採用《CC 協議》,轉載必須註明作者和本文連結