Office 2013 の「VBA プロジェクトのデジタル証明書」はどこに?

More than 1 year has passed since last update.

答え

C:\Program Files\Microsoft Office 15\root\office15\SELFCERT.EXE

※ インストール場所や 64bit/32bit で多少異なるので、そこは検索するなどしてよしなに。

経緯

デジタル署名の必要性

Excel で自動処理を行いたい場合は VBA 一択であるが、マクロウィルスなどの対策のため、無条件に動作させるのは問題がある。
セキュリティセンターでのマクロの設定を見ると、

  1. [警告を表示せずにすべてのマクロを無効にする] ... マクロは無効
  2. [警告を表示してすべてのマクロを無効にする] ... やっぱりマクロは無効
  3. [デジタル署名されたマクロを除き、すべてのマクロを無効にする] ... デジタル署名のみマクロを実行
  4. [すべてのマクロを有効にする (推奨しません。危険なコードが実行される可能性があります)] ... サイバーノーガード戦法

となっており、マクロを使うのであれば、デジタル署名が事実上必須となっている。

デジタル署名の選択肢

お金のある人は、パブリック認証局(CA)から買ってください。技術力のある人は、プライベート認証局を構築してオレオレ認証してください。
私はどちらもないので、「VBA プロジェクトのデジタル署名」を使うことにする。

Office 2010 までの話

[スタート] →[すべてのプログラム] →[Microsoft Office]→[Microso ft Office ツール]→[VBA プロジェクトのデジタル証明書] で、実行すればOKだった。

Office 2013 の話

Office 2013(実際には、Office 356 Solo だが)のセットアップ後に、メニューを開いても、[スタート] →[すべてのプログラム] →[Microsoft Office 2013]→[Microso ft Office 2013ツール] に [VBA プロジェクトのデジタル証明書]や、それっぽいものが存在しない。
しかし、ヘルプで検索すると、「マクロ プロジェクトにデジタル署名を追加する」が表示され、それには

[スタート] をクリックし、[すべてのプログラム] をポイントします。[Microsoft Office]、[Microsoft Office ツール]、[VBA プロジェクトのデジタル証明書] の順にクリックします。
[デジタル証明書の作成] ダイアログ ボックスが表示されます。

と書いてあり、さらに

適用対象: Visio 2013, Office Shared 2013, Excel 2013, Excel 2010, PowerPoint 2010, Visio 2016 Preview, Visio 2010, Word 2013, Word 2010, Visio Standard 2010, PowerPoint 2013

と、Office 2013 でこの方法で良さそうにみえるのだが... (関係ないが、Visio 2016 Preview ってのは興味深い。)

検索の結果

Office 2010 や 2007 では、SELFCERT.EXE ファイルだったので、HDD を検索することで、Office 2013 の「デジタル証明書の作成」が C:\Program Files\Microsoft Office 15\root\office15\SELFCERT.EXE にあることを発見する。

おまけ、マイクロソフトサポートからの回答

とのこと。

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.