在 Excel 中,可以更改宏安全设置,控制打开工作簿时哪些宏将运行以及在什么情况下运行。 例如,可以根据宏是否由受信任的开发人员进行了数字签名来确定是否运行宏。
有关 Microsoft Office 文档中宏安全设置的详细信息,请参阅启用或禁用 Office 文件中的宏。
下面的列表概括了各种宏安全设置。 在所有设置下,当安装了与 Microsoft 365 一起使用的防病毒软件时,如果工作簿中包含宏,则将在打开工作簿之前对其进行扫描,以检查是否存在已知的病毒。
-
禁用所有宏,并且不通知 如果你不信任宏,请单击此选项。 此时,将禁用文档中的所有宏以及有关宏的安全警告。 如果有些文档包含的未签名宏是你确实信任的,则可以将这些文档放入受信任位置。 受信任位置中的文档无需经过信任中心安全系统的检查便可运行。
-
禁用所有宏,并发出通知 这是默认设置。 如果你希望禁用宏,但又希望存在宏时收到安全警告,请单击此选项。 这样,你就可以选择在各种情况下启用这些宏的时间。
-
禁用无数字签署的所有宏 除了宏由受信任的发布者进行数字签名的情况,此设置与“禁用所有宏,并发出通知”选项相同,如果你信任发布者,宏就可以运行。 如果你不信任该发布者,你就会收到通知。 这样,你便可以选择启用那些已签名宏或信任发布者。 将禁用所有未签名的宏,并且不发出通知。
-
启用所有宏(不推荐,可能会运行有潜在危险的代码) 单击此选项可允许所有宏运行。 使用此设置会使你的计算机容易受到潜在恶意代码的攻击,因此不建议使用此设置。
-
信任对 VBA 工程对象模型的访问 此设置供开发人员使用,专门用于禁止或允许任何自动化客户端以编程方式访问 VBA 对象模型。 换句话说,它为编写用于自动执行 Office 程序以及以编程方式操作 Microsoft Visual Basic for Applications (VBA) 环境和对象模型的代码提供了一种安全选项。 此设置因每个用户和应用程序而异,默认情况下拒绝访问。 通过此安全选项,未授权程序很难生成损害最终用户系统的“自我复制”代码。 若要使任何自动化客户端能够以编程方式访问 VBA 对象模型,运行该代码的用户必须显式授予访问权。 若要启用访问,请选中该复选框。
Office 利用 Microsoft 验证码技术使宏创建者能够对文件或宏项目进行数字签名。 用于创建此签名的证书可确认宏或文档是否源自签名者,并且签名还将确认宏或文档是否未被改动。
在安装数字证书后,可以对文件和宏项目进行签名。
获得用于签名的数字证书
您可以从商业证书颁发机构 (CA) 那里获得数字证书,也可以从内部安全管理员或信息技术 (IT) 专业人员那里获得数字证书。
若要了解有关为 Microsoft 产品提供服务的证书颁发机构的详细信息,请参阅 Microsoft 根证书计划成员列表。
创建自己的用于自签名的数字证书
通过使用 Selfcert.exe 工具,你也可以创建自己的自签名证书。
注意: 由于你创建的数字证书不是由正规证书颁发机构颁发的,因此使用这样的证书签名的宏项目称为自签名项目。 Microsoft Office 只在个人证书存储区中拥有自签名证书的计算机上信任该证书。
有关如何对宏进行数字签名的详细信息,请参阅为宏项目进行数字签名。
更改宏安全设置
你可以在信任中心中更改宏安全设置,除非你的组织的系统管理员为防止他人更改这些设置而更改了默认设置。
-
在“开发工具”选项卡上的“代码”组中,单击“宏安全性”。
若要启用“开发工具”选项卡,请参阅 显示“开发工具”选项卡。
-
在“宏设置”类别中的“宏设置”下,单击所需的选项。
注意: 在 Excel 中的“宏设置”类别中所做的任何更改仅应用于 Excel,而不会影响任何其他 Microsoft Office 程序。
也可以在 Excel 选项中访问信任中心。 为此,请单击“ 选项”,然后单击“ 信任中心 > 信任中心设置” > “宏设置”。
有关宏安全性的详细信息,请参阅下列主题:
疑难解答
我无法更改我的宏安全设置
某些用户可能由于其组织中的组安全策略而无法更改信任中心设置。 在这种情况下,你需要联系贵组织的 IT 管理员。
需要更多帮助吗?
可随时在 Excel 技术社区中咨询专家或在社区中获取支持。