vba - 如何在 excel vba 中卸载多个用户窗体?

标签 vba excel userform

我在 excel 工作簿中有很多用户表单。
当用户在表单之间移动时,它们是隐藏的。
我可以使用什么代码一次性卸载所有用户表单?

Private Sub CommandButton3_Click()
Unload UserForm15
Unload UserForm14
Unload UserForm13 
Unload UserForm12
Unload UserForm11
Unload UserForm10
Unload UserForm9 
Unload UserForm8
Unload UserForm7
Unload UserForm6
Unload UserForm5
Unload UserForm4
Unload userform3
Unload UserForm2
Unload UserForm1
End Sub

是否有更短的代码来执行此操作,还是我回答了自己的问题?

最佳答案

表单可以像其他对象一样循环

Sub testIt2()
    Dim i As Long
    For i = VBA.UserForms.Count - 1 To 0 Step -1
        Unload VBA.UserForms(i)
    Next i
End Sub

未测试

关于vba - 如何在 excel vba 中卸载多个用户窗体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39167672/

相关文章:

excel - 将值输入数组

vba userforms回车行为

excel - 如何让 VBA 代码等待 vbModeless 用户窗体关闭

VBA Excel 2016 : type mismatch error

excel - 当打开另一个具有相似工作表的工作簿时,VBA 用户定义函数返回#VALUE

vba - 列格式转换为数字,但显示为文本

vba - Excel VBA 函数在 Visual Basic 中工作,但在工作表中失败

javascript - 无法在导出的 CSV 文件中显示变音符号

vba - ADODB 在记录集上查找

vba - 如何加快用户表单 excel 上列表框值的填充