如何要求VBA从Microsoft Excel安全通知中选择消息框中的非默认选项?

如何要求VBA从Microsoft Excel安全通知中选择消息框中的非默认选项?,excel,vba,Excel,Vba,我用VBA编写了一个宏,用for循环处理其他Excel文件(其中很多)。每次打开新文件时,都会出现Microsoft Excel安全通知。有两种选择: Enable Macros 及 后者是默认选项。我无法在设置中设置始终启用宏,因为我的公司不允许修改此选项。因此,我想知道是否有办法让VBA始终选择启用宏选项 简单地说,不,VBA无法关闭安全通知 原因很清楚,;如果有人能简单地通过代码将其转换,那又有什么意义呢?任何恶意宏都将被允许运行 你能做什么 您可以通过“信任中心”设置尝试许多方法 复制

我用VBA编写了一个宏,用for循环处理其他Excel文件(其中很多)。每次打开新文件时,都会出现Microsoft Excel安全通知。有两种选择:

Enable Macros


后者是默认选项。我无法在设置中设置
始终启用宏
,因为我的公司不允许修改此选项。因此,我想知道是否有办法让VBA始终选择
启用宏选项

简单地说,不,VBA无法关闭安全通知

原因很清楚,;如果有人能简单地通过代码将其转换,那又有什么意义呢?任何恶意宏都将被允许运行

你能做什么

您可以通过“信任中心”设置尝试许多方法

  • 复制文件夹中的所有文档,并将文件夹路径添加到受信任位置列表中

  • 如果文档位于网络文件夹中,请启用允许信任网络上的文档的选项(您可能需要先检查公司的策略)

  • 创建自签名证书并对所有VBA项目进行签名(如果是自签名证书,则不确定此操作是否有效)

  • 事实上,由于贵公司有一项有关宏观安全的政策,我认为在做出上述任何更改之前,最好与他们核实一下

    关闭宏安全性不是一项简单的任务,否则安全性将是垃圾

    希望这有帮助。

    尝试设置

    选项->信任中心->信任中心设置…->宏设置“
    并勾选“信任访问VBA项目对象模型”复选框

    并尝试将您的文件位置添加到


    “受信任的位置”:“选项->信任中心->信任中心设置…”信任位置->添加新位置“

    尝试设置”选项->信任中心->信任中心设置…->“宏设置”并勾选“信任对VBA项目对象模型的访问”复选框。并尝试将文件位置添加到“受信任的位置”:“选项->信任中心->信任中心设置…”“受信任的位置->添加新位置…”@FaneDuru我添加了一个受信任的位置,它成功了。谢谢。然后,我会在回答中转换我的评论。。。
    Disable Macros