1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Outlook VBAで「マクロは無効に設定」エラーでマクロ実行できない事象をselfcert.exeで解消。

Posted at

事象

Outlook VBAを実行しようとしたところ、Outlook の開発タブから実行したが実行されない。
開発環境である自身のPC上では問題なく動作するが、ユーザーのPCでのみ事象発生。
VBEから実行すると、セキュリティセンターで、「すべてのマクロを有効にする」としているのに以下の画面が表示された。

image.png

原因

セキュリティセンターの設定にかかわらず、証明書が設定されていないとOutlook VBAを実行できない仕様のようです。
※自身のPCでは引き渡された時、既に設定済み。

事象発生したPCのVBE-ツール-デジタル署名を確認したところ、以下のように証明書が設定されていませんでした。

image.png

対応

selfcert.exe を実行し、自己証明書を作成し、VBEに設定します。

自身のPCでは検索でVBAと検索するとVBAプロジェクトのデジタル証明書として検索できたのですが、ユーザーのPCでは出てこなく、ファイル名を指定して実行でも起動できず。
自身のPCでexeが格納されているフォルダパスはユーザーのPCにはなく、最終的にユーザーPCのエクスプローラーでofficeインストールフォルダ周辺を検索してもらい、発見しました。

起動すると、以下の画面が出るので、適当な名前をつけてOK。

image.png

VBE-ツール-デジタル署名から先ほど作成した署名を選択、VBEを保存してOutlook 再起動後にVBAが実行できるようになりました。

厄介ポイント

  • VBEの画面から実行しないと、エラーメッセージ出ないが実行できない、という挙動になり気が付くのが難しい。
  • なぜかユーザーのPCで初回は実行できてしまった。
  • selfcert.exeが環境次第で場所が変わる。

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?