我需要向EXCEL VBA中正在處理的用戶表單添加一個Reset按鈕。我有以下代碼可以完成大部分工作,但是,我還沒有弄清楚如何清除refedit控件。這是我到目前爲止有:excel vba清除用戶表單中的所有refedit控件
===
'Reset Button
Private Sub CommandButton2_Click()
For Each ctrl In Me.Controls
Select Case TypeName(ctrl)
Case "TextBox"
ctrl.Text = ""
Case "ComboBox"
ctrl.ListIndex = -1
Case "OptionButton", "CheckBox"
ctrl.Value = False
Case "ListBox"
For i = 0 To ctrl.ListCount - 1
If ctrl.Selected(i) Then
ctrl.Selected(i) = False
End If
Next i
End Select
Next
End Sub
===
這適用於文本框,複選框,等我曾嘗試加入2個不同的代碼片段,以這種sub清除refedit控件。
1:
For i = 0 To crtl.RefEdit - 1
ctrl.Selected(i) = vbNullString
Next i
===
2:
Case "RefEdit"
ctrl.RefEdit = vbNullString
===
無論如所期望的工作原理。任何建議表示讚賞!
感謝,
丹
是否'ListBox'情況工作,與格式? (我從來沒有見過這樣的) – BruceWayne
@BruceWayne它會的,是的。這種格式不是必需的,只是個人偏好。 – tigeravatar