我有一个可以填写的用户表单,但是只有填写了以前的用户表单,因为在用户表单中根据以前的输入进行了计算,如果这些是空的,计算就会崩溃。
现在我写了几个if语句来检查这些空值然后有一个大脑闪存..如果其中一个字段丢失,用户表单只是禁用了怎么样。如此思考,如此完成并且有效:)
if DP1 = "" then
reportback.enable = false
else
end if
这是形式,它显示出很漂亮,没有任何东西可以改变,但是哦......你甚至无法关闭表格,没有任何作用。大声笑。
所以我的问题。有没有办法从任何输入禁用所有字段但仍然有取消按钮激活?
Private Sub Cancel_Click()
Unload reportback
End Sub
答案 0 :(得分:5)
使用以下代码禁用表单上的所有控件以避免此问题。 UserForm1指的是Userform的名称,请相应地替换。
Dim ctrl As Control
For Each ctrl In UserForm1.Controls
ctrl.Enabled = False
Next
Set ctrl = Nothing