VBA 安全通知 - "Data connections have been blocked"
VBA Security Notices - "Data connections have been blocked"
我正在尝试确定 "Microsoft Excel Security Notice" 与 .xlam 文件关联的原因。特别是,我很好奇 VBA 代码中是否存在导致此类安全通知的某些属性或方法?我们有另一个作为加载项安装的 .xlam,它从未导致类似的通知,因此让我相信有某种 属性 或正在使用的方法导致了问题。我已经注释掉了很多行,看看我是否可以自己隔离违规者,但到目前为止还没有成功。
代码示例被注释掉;
pathToCSV = ActiveWorkbook.Path
HostName = ActiveWorkbook.Name
Set Globe = CreateObject("Scripting.FileSystemObject")
Set place = Globe.GetFolder(pathToCSV)
Set Destination = Application.Workbooks.Add
如有任何想法,我们将不胜感激。
Excel 加载项只是一种特殊的 Workbook
项目,在 Excel 启动时加载。作为一个 Workbook
对象,它有一个 Connections
集合。
我不知道您的代码是否需要 ThisWorkbook
中的连接,但加载具有数据连接的 Excel 加载项似乎是一个安全问题 - 所以如果您 确实需要它们,考虑研究替代方法。
要删除它们,请在直接窗格 (Ctrl+G) 中工作 - 确保加载项工作簿项目在 VBA 编辑器中处于活动状态。
for i = 1 to thisworkbook.connections.count : thisworkbook.connections(1).delete : next
这应该删除所有这些。保存加载项项目,关闭 Excel,重新打开,看看是否仍然收到警告。
@Mathieu Guindon
我认为代码应该是
for i = 1 to thisworkbook.connections.count : thisworkbook.connections(i).delete : next
没有
for i = 1 to thisworkbook.connections.count : thisworkbook.connections(1).delete : next
你同意吗?
我正在尝试确定 "Microsoft Excel Security Notice" 与 .xlam 文件关联的原因。特别是,我很好奇 VBA 代码中是否存在导致此类安全通知的某些属性或方法?我们有另一个作为加载项安装的 .xlam,它从未导致类似的通知,因此让我相信有某种 属性 或正在使用的方法导致了问题。我已经注释掉了很多行,看看我是否可以自己隔离违规者,但到目前为止还没有成功。
代码示例被注释掉;
pathToCSV = ActiveWorkbook.Path
HostName = ActiveWorkbook.Name
Set Globe = CreateObject("Scripting.FileSystemObject")
Set place = Globe.GetFolder(pathToCSV)
Set Destination = Application.Workbooks.Add
如有任何想法,我们将不胜感激。
Excel 加载项只是一种特殊的 Workbook
项目,在 Excel 启动时加载。作为一个 Workbook
对象,它有一个 Connections
集合。
我不知道您的代码是否需要 ThisWorkbook
中的连接,但加载具有数据连接的 Excel 加载项似乎是一个安全问题 - 所以如果您 确实需要它们,考虑研究替代方法。
要删除它们,请在直接窗格 (Ctrl+G) 中工作 - 确保加载项工作簿项目在 VBA 编辑器中处于活动状态。
for i = 1 to thisworkbook.connections.count : thisworkbook.connections(1).delete : next
这应该删除所有这些。保存加载项项目,关闭 Excel,重新打开,看看是否仍然收到警告。
@Mathieu Guindon
我认为代码应该是
for i = 1 to thisworkbook.connections.count : thisworkbook.connections(i).delete : next
没有
for i = 1 to thisworkbook.connections.count : thisworkbook.connections(1).delete : next
你同意吗?