测试VBAProject是否通过来自personal.xlsb的宏进行了保护

wit4r7

我在personal.xlsb中创建了一些宏来测试其他Excel工具。宏应该测试打开的文档的VBAProject是否具有密码保护。

我在personal.xslb中创建了以下代码,无论是否为测试文档设置密码,该代码始终显示True。

Sub testVBAPasswort()
   '1 = VB-Project protected
   '0 = VB-Project not protected
    If Application.ActiveWorkbook.VBProject.Protection = 1 Then
        MsgBox "False"
    Else
        MsgBox "True"
    End If
End Sub
泰特·加林格

尝试测试的元素VBProject我这样做Workbook.VBPRoject.VBComponents.Count然后,我使用一个错误处理程序进行测试Err.Number = 50289,这意味着该工作簿受密码保护并且当前处于锁定状态。当然,一旦VBProject解锁,它将不再引发该错误。

编辑:

您应该直接引用您要测试的工作簿,否则您可能正在测试personal.xlsb自己。如果您需要能够动态测试工作簿,则只需添加

Dim w as Workbook
For each w in Application.Workbooks
    If Not w.Name = "personal.xlsb" Then
        If w.VBProject.Protection = 1 Then
            MsgBox w.Name & " Password Protected"
        Else
            MsgBox w.Name & " Not Password Protected"
        End If
    End If
Next w

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

通过来自 sql 的请求在 Python 中进行计算

如何检测Chrome中的JavaScript是否对HTML视频进行了DRM保护?

django通过来自不同字段的最新日期对queryset进行排序

通过来自不同表的多个选择请求进行分组

SQL-通过来自多个表的信息对表进行排序

内核是否进行了碎片整理

是否对克隆语句进行了优化?

通过来自反应式数据帧的selectinput选择来对反应式数据框架进行分组

React - 通过来自获取请求的响应数据进行映射 - 为什么不显示响应数据?

通过来自系留(主机)PC 的串行线路对 Arduino/Atmel328 进行机器编码

是否对来自ServiceLoader的Iterable对象进行了排序?

如何通过来自网络源的图像进行分割和成像,并通过threejs对象上的纹理应用它们?

检查是否对numpy数组进行了排序

Ubuntu是否针对多核CPU进行了优化?

SoX 中的 noiseprof 是否对声音进行了平均测量?

检查用户是否对某项投票进行了投票

数组是否在 jOOQ 和 PostgreSQL 中进行了优化?

OpenCV是否在调试模式下进行了优化?

确定是否对小标题进行了分组

检查ConcurrentHashMap的computeIfAbsent是否进行了更改

如何确定Swift是否使用优化进行了编译

如何知道jtextarea中是否进行了任何更改?

检查Git是否以编程方式进行了更改

是否对JavaScript引擎尾部调用(TCO)进行了优化?

以编程方式找出是否对Java类进行了修补?

验证是否在电话提示后进行了呼叫

如何确定卫星是否进行了机动?

如何检查rsync是否对bash进行了任何更改?

检查用户是否对范围进行了投票