Office 365 受保护的视图破坏 Excel 宏

Posted

技术标签:

【中文标题】Office 365 受保护的视图破坏 Excel 宏【英文标题】:Office 365 Protected View Breaking Excel Marcos 【发布时间】:2018-11-18 00:44:17 【问题描述】:

我们的客户端已更新至 Microsoft Office 365(版本 1708),当通过电子邮件接收包含 vb 宏的生成 Excel 文件 (xlt) 时,它现在显示“受保护的视图小心 - 电子邮件附件可能包含病毒。除非您需要编辑,留在受保护的视图中更安全。” - 并且不运行宏(当然)。

单击“启用编辑”用户会收到运行时错误,但在 Office 2013 中它可以正常工作。

同样在 Office 365 中,如果我们取消选中“为 Outlook 附件启用受保护的视图”并重新发送文件,它可以正常工作。

有什么想法吗? 干杯, 史蒂夫

【问题讨论】:

抱歉,我们只讨论一个版本的 365 (v1708),在 Office 2013 上该文件可以正常工作。 您是否检查了信任中心设置:宏设置 + 编程访问? 在信任中心,Marco设置设置为“启用所有宏(不推荐;有潜在危险的代码可以运行)”,实际上整个宏设置都被禁用了,我也勾选了“信任访问”到 VBA 项目对象模型”没有成功。您将如何进行程序化访问? 在程序访问选项中,我记得有一次 MS Office 无法识别防病毒软件时遇到了问题。我不认为你必须在那里改变任何东西。电子邮件安全设置怎么样?允许运行脚本?客户 Excel 中的文件块设置怎么样? 我在 Excel 的信任中心看不到 Programmatic Access 选项,但我可以在 Outlook 的信任中心看到它。在 Excel 中,如果我们取消选中“为 Outlook 附件启用受保护的视图”并重新发送文件,它可以正常工作 - 但客户端不希望该选项。 【参考方案1】:

经过数小时的黑客攻击和谷歌搜索,我们发现这是 Office 365 中现有的错误。

对我们来说可行的解决方法是改变:

Private Sub Workbook_Open()
    Call formatData
End Sub

收件人:

Private Sub Workbook_Activate()
    Call formatData
End Sub

【讨论】:

以上是关于Office 365 受保护的视图破坏 Excel 宏的主要内容,如果未能解决你的问题,请参考以下文章

Office 365 Excel眼红神技

通过脚本使用 Office365 Excel 打开 CSV

从在 Access 中以编程方式打开的 Excel 工作表中删除受保护的视图

Excel 文件在受保护的视图中不显示超链接(Gembox 和 Kendo)

如何管理监视和保护Office 365环境

如何管理监视和保护Office 365环境