Excel:删除受保护工作簿中的 .Connections 时出现问题

Excel: problem with deleting .Connections in a protected workbook

在尝试使用 VBA 从我的受保护工作簿(从 csv 文件导入数据)中删除外部连接时,我 运行 进入运行时错误“5”。奇怪的是,如果我取消保护工作簿,它会起作用。

我找到了这个帖子:Protect Excel Worksheet For Read Only But Enable External Data Refresh,但是建议的在脚本 运行ning 时取消保护工作簿的解决方案是不可能的。

这是我用来删除外部数据连接的代码:

Sub RemoveExternalDataConnections()

    Dim i As Long

    For i = ActiveWorkbook.Connections.Count To 1 Step -1

        ActiveWorkbook.Connections.Item(i).Delete

     Next

End Sub

总而言之,即使工作簿受到保护,我也希望删除外部数据连接。

对于其他人 - 取消保护工作簿似乎是最简单的方法。在 document/VBA 项目上设置密码无论如何都不是特别安全,它不会阻止大多数精通技术的用户访问它。