Microsoft Outlook 2013:错误验证VBA项目签名

时间:2015-06-03 12:18:00

标签: certificate outlook-vba outlook-2013

计算机重置后,我想将我的VBA宏用于Outlook 2013。

在Outlook中,我收到错误消息:

  

"在尝试验证VBA项目的签名时发生了错误。宏将被禁用。"

因此,VBA编辑说:

  

"此项目中的宏已禁用。 [..]"

我试过了:

  1. 开发者 - >宏安全 - > (*)启用所有宏(不仅是数字签名)

  2. 使用

    定义证书
    C:\Program Files (x86)\Microsoft Office\Office15\selfcert.exe
    
  3. 没有任何效果。有什么想法吗?

4 个答案:

答案 0 :(得分:7)

刚刚遇到这个问题,这就是我最终解决的问题(其他一些建议都没有对我有用):

  1. 创建自我证书 - 我称之为“自我证书”(在Office 2013中生成 - C:\ Program Files(x86)\ Microsoft Office \ Office15 \ SELFCERT.EXE)
  2. 从开始菜单运行certmgr.crt并将“Self Cert”从“Personal \ Certificates”复制到“Trusted Root Certification Authorities \ Certificates”文件夹
  3. 以管理员身份打开Outlook.exe
  4. 打开VBA(即开发人员 - > Visual Basic)
  5. 打开包含VBA代码的模块
  6. 选择工具 - >数字签名 - >选择...
  7. 选择确定以选择“自我证书”(VB然后将项目显示为使用此证书进行签名),然后再次单击“确定”接受并关闭窗口
  8. 单击以在VBA中保存宏 - 实际上单击VB中的保存按钮(如果您没有明确保存,则会发生故障
  9. 关闭VBA
  10. 关闭Outlook,然后选择“是”以保存VBA项目
  11. 以管理员身份再次重启Outlook.exe
  12. 现在,或者你去“开发者 - > Visual Basic“再一次,会弹出一个窗口提示你关于新签名的宏 - 我点击了记住并且不再提示
  13. 宏现在应该可以工作了!我将它们作为电子邮件规则的一部分使用,现在处理得非常好。
  14. 我并不完全确定您需要在上面以管理员身份运行Outlook,但它现在无需以管理员身份运行,因此我很高兴。

    感谢这个资源让我为我工作!我基本上只是更新,巩固和扩展了给出的答案。 https://social.technet.microsoft.com/Forums/en-US/07f0158c-085b-4031-93a1-c9d047cf855c/unable-to-sign-outlook-2010-vbaproject?forum=outlook

答案 1 :(得分:2)

好的,我找到了问题的原因:

(1)selfcert.exe的证书nameofmycert已分配给我的VBA项目。

(2)但是,我没有将其分配给受信任的机构,如:https://technet.microsoft.com/en-us/library/cc754841.aspx#BKMK_addlocal

(3)Outlook设置为允许所有宏(不仅是数字签名)。无论如何,它发现我的VBA项目已经过认证,但由于(2)而不确定是否正确认证。因此,它会停用所有宏。

(4)在VBA / Tools / Dignital Signature中出现:

Certificate name: [no certificate]
Sign as: nameofmycert

取消按钮已停用。

<强>解决方案:

(1)VBA /工具/数字签名

(2)点击Choose ..并选择证书。然后激活移除按钮。

(3)点击Remove Certificate

(4)保存VBA项目

(5)重启Outlook

答案 2 :(得分:0)

我遇到了同样的问题,解决方案在此解决了这个问题:https://social.technet.microsoft.com/Forums/en-US/07f0158c-085b-4031-93a1-c9d047cf855c/unable-to-sign-outlook-2010-vbaproject?forum=outlook。线程很长,但要点是你需要在签名后和退出VBA编辑器之前手动保存你的VBA项目。向&#34; Diane Poremsky [MVP]&#34;向下滚动大约2/3的路径。

答案 3 :(得分:-1)

您需要更改信任中心设置(运行所有宏,不仅是数字签名)或从受信任的机构购买有效证书。