先日タイトル通りの出来事に遭遇した。
どうにも自力では原因がつかめず、twitterフォロワーの皆様に助けを求めたところ無事に解決いたしましたので備忘録。
アドインを読み込まない
メール経由で取得したアドインを使用するために、開発タブ→Excelアドイン→使用したいアドインにチェックを入れる。
チェックを入れた時はアドインを使用できる。
ところが一度Excelを閉じて、再度開く。
上記のチェックは付いているがアドインが使用できなくなる。
チェックを入れる
早速ですが、今回の私の環境では下記の対応で解決いたしました。
Excelを全て閉じて、該当のアドインファイルを右クリック。
プロパティを選択。
「許可する」にチェックが入っていなければチェックを入れる。
たったこれだけでOKです。
セキュリティ対応
なぜこの対応が必要なのでしょうか?
今回この症状が発生したのはメール経由で取得したアドインファイルをそのままAddInフォルダに保存した時に発生しました。
メールやインターネットからダウンロードしたファイルにはゾーン識別子(Zone.Identifier)という情報が付加されています。
この情報が付加されているファイルは実行時に実行確認のアラートが表示されます。
ところがアドインファイルはアドインファイルそのものをダブルクリックで実行しても、Excel上でアドイン使用にチェックをしても確認アラートが表示されず、実行することが出来ません。
そこで今回の対応「許可する」にチェックを入れることでゾーン識別子を削除出来ます。
そうすることでネットからダウンロードしていない、通常のファイルのように実行することが出来ます。
ゾーン識別子については下記参照
余談
ちなみにアドインファイルではないファイルをダウンロードして実行した時は、下記のアラートが表示されます。
このアラートで「編集を有効にする」と上記Zone.Identifierが付加されたまま(「許可する」に未チェック)でも実行できるようです。
まとめ
ネットからダウンロードしたファイルを無闇に実行させないためのセキュリティ機能が原因でしたが、アラートも何も表示されないため気づきませんでした。
教えて頂きました踊るエクセルさんありがとうございます!
前に似たような現象を経験して
— 踊るエクセル@VBEアドイン作ってVBEハック中・・・ (@ExcelVBAer) 2021年6月9日
↓の許可するをONにしたら
いけたような・・ pic.twitter.com/M9EaRFWEiT