[英]Writing code that applies to multiple check boxes in VBA
我正在嘗試為具有約100個復選框的VBA用戶窗體編寫一些代碼。 我想知道是否有一種方法可以將一段代碼應用於任何復選框,或者是否必須為checkbox1_click,checkbox2_click,checkbox3_click等編寫100個單獨的函數。
感謝您的任何幫助:)
編輯:我意識到這將有助於解釋我到底想做什么。 將有100個復選框,每當單擊一個復選框時,我都想這樣做:
呼叫CheckBoxClicked(“ checkboxname”)
將其放在名為clsCheckBoxHandler的類模塊中
Public WithEvents chk As MSForms.CheckBox
Private Sub chk_Click()
MsgBox chk.Caption & " Clicked!"
End Sub
然后在用戶表單中
Dim chkCollection As Collection
Private Sub UserForm_Initialize()
Dim cCont As Control
Dim chkH As clsCheckBoxHandler
Set chkCollection = New Collection
For Each cCont In Me.Controls
If TypeName(cCont) = "CheckBox" Then
Set chkH = New clsCheckBoxHandler
Set chkH.chk = cCont
chkCollection.Add chkH
End If
Next cCont
End Sub
這只是具有click事件的復選框的簡單處理程序,但可以擴展為涵蓋多個控件和事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.