vba - 关闭所有打开的模块的宏
问题描述
在 2017 年之前,我有一个 VBA 宏例程,可以关闭所有打开的 VBA 模块(包含宏的模块除外)。
它看起来像这样:
Sub Close_Modules_1()
Dim iTemp As Integer
For iTemp = ThisWorkbook.VBProject.VBE.Windows.Count To 1 Step -1
With ThisWorkbook.VBProject.VBE
.Windows (iTemp) '<- Invalid use of property
End With
Next
Debug.Print "Done."
End Sub
- 谁能提供一个关闭所有 VBA 模块的工作例程?我有时会得到 100 多个开放模块。
- Microsoft 是否明智地在 Excel 2016/2019/Excel 365 中对模块执行非法操作?
在此先感谢您提供有用的想法。
解决方案
用这个:
Private Sub X_Click()
Dim iTemp As Integer
For iTemp = ThisWorkbook.VBProject.VBE.Windows.Count To 1 Step -1
Debug.Print ThisWorkbook.VBProject.VBE.Windows(iTemp).Caption
If InStr(ThisWorkbook.VBProject.VBE.Windows(iTemp).Caption, "(") > 0 Then
ThisWorkbook.VBProject.VBE.Windows(iTemp).Close
End If
Next
End Sub
不要忘记先检查此选项:
推荐阅读
- android - 如何在颤振中创建自定义步进器?
- fb-hydra - 如何从配置中配置 hydra 输出目录?
- google-cloud-platform - GCP Cloud SQL 未能删除实例,因为 `deletion_protection` 设置为 true
- azure - Azure 容器 - 与远程容器实例上的文件交互
- ruby-on-rails - 获取我的关联的 current_index
- pascal - 如何找到给定字符串中的单词数?
- tensorflow - 将 TensorFlow 1 代码移植到 TensorFlow 2(没有 sess.run 的模型学习过程)
- encoding - 符号和编码:这是什么符号?
- c# - c# 列表
- 它总是将第一个索引转换为 50?第二个到 51 等 - html - Chrome 开发者工具不会改变网站