- ベストアンサー
2007マクロの初歩
マクロを作って保存し再度開くと、「マクロが実行できません。このブックでマクロが実行できないか、すべてのマクロが無効になっています」との表示が出てきます。 また上部のバーには「セキュリティの警告」が表示され、オプションで「このコンテンツを有効にする」にするとマクロは使えますが、毎回この操作が必要なのでしょうか。 質問は、ブックを開いた時、こういう表示を出させずにマクロが使える方法を教えていただきたいということです。よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 私のほうのセキュリティのスタンスを書いておきます。 >でも「すべてのマクロを有効にする」は「推奨しません」とあり、それについてはedomin2004さんもこのことを指摘されていますが、特に問題はないのでしょうか? >ウィルス対策などを一応とっていれば、それほど神経質にならなくてもいいのでしょうか? 私の知っている範囲ですが、Microsoft 社製のアンチウィルスが、あからさまに、Office のセキュリティをあげようという操作をしますが、逆にいうと、その技術は、セキュリティを下げる行為も可能だということです。つまり、Office 内のセキュリティは、そんな、みえみえの技術では、外部から簡単に操作出来てしまうことを意味しています。少なくとも、私の個人のWin XPでは、アンチウィルス常駐下で、無防備で変更できました。 マクロを一切拒否するというスタイルなら、それはマクロ型ワームウィルスに対しては、防御できますが、実際はそれだけではありませんから、Office 内のセキュリティを上げても、あまり役に立たないのです。(Office 2007+ Vistaでは、そのあたりのセキュリティは、OS自身が高くなっていますが、反面、アドインなどでは、困った問題も発生します。) 基本的には、パソコン内に対して、ファイルの「入」に対し、神経質なぐらいに、チェックをしなければ、防御できるものではありません。ですから、世界的に認められた有名なアンチウィルスソフトを使うことで防ぐしかないと思っています。 「すべてのマクロを有効にする」というのを嫌うのは、プロ・レベルの人だと思います。実際、素人マクロの怖さはあります。概ね、本人が気がつかない条件での無限ループが多いのですが、無意味なActive X の呼び出しというものもあります。Excel 2007 では、その点で、今までのExcel 2003 と内部的に変わった部分があり、下手なコードですと、ハングすることがあります。 特殊なアンチウィルス・ソフトで、「マクロカッター」というものがありますが、その作者のいうように、本来は、中身をみないでは使えないという考え方は正しいのですが、どのぐらいコードを読み解けるかということも問題になってしまいます。私は、この考え方には賛成ですが、他人に見られたくないものを無理にこじ開けようとは思いません。(この行為は、場合により著作権法に、問題になる場合もあります。) 私は、コードの読めないものは基本的には使わないのですが、いまどき、コードが読める読めないというレベルでは、今のマクロ(非VBAのコンパイル型)では、それは追いつかないのです。Microsoft側も、以前、コードの著作権を気にするぐらいなら、コンパイル型にするべきだと言っていたぐらいです。 セキュリティの上下クラスはあまり神経質になる必要はないと思います。その機能で防御するというのは、ある意味ナンセンスなのです。たとえば、私の知っている例ですと、上司が、マクロがわからないから社員には禁止するとか、社員がマクロで失敗させたので、それ以降は、社内ではマクロ厳禁とか、そういう類でしかないようです。 しかし、作者不明なマクロと、特殊なプロジェクト・ロックをしたものは、使わないようにしたほうがよいのではないかと思います。特殊なプロジェクト・ロックというのは、プロジェクトのところをクリックしても、ダイアログ・ボックスが立ち上がらないものを指します。(Office 97以下で作ったものも同様になります。)それは、クラックの技術を応用したものであって、決して、正当な(MS側の認めたもの)方法でロックされたものではないと思うのです。それほどまでの秘匿性が、スクリプト型のマクロにあるのか疑わしいのです。 >オプションで「このコンテンツを有効にする」にするとマクロは使えますが、毎回この操作が必要なのでしょうか。 このメッセージを出さないようにするには、デジタル署名やCA証明が必要ですが、当面、デジタル署名で可能です。すべてのVBEのコードをオープンにできるわけではありません。自分たちで使う範囲では、VBE側のツールのデジタル署名をして、ロックを施したほうが良いようです。会社の種類によっては、CAデジタル証明を持っていたら、そちらでお聞きになってもよいです。 しかし、2007には、保存の際に、配布準備という項目があり、そこで、デジタル署名を追加すると、いくら、パスワードを知っていて、VBEのプロジェクト開けられても、状況により、読み取り専用で改編できなくなってしまいますので注意が必要です。配布をしなければ、この方法はしないほうがよいです。 長くて分かりにくい内容かもしれませんが、大事なことは、アンチウィルスに関しては、個人なら、安易に選択するべきではないし、会社の場合は、更新されているとか、そういうことは気にかけておいたほうがよいです。それと「ファイルの入り」には気をつけてください。Office 内のセキュリティには、それ勝るほどの防御できるものがありません。
その他の回答 (2)
- marbin
- ベストアンサー率27% (636/2290)
http://pc.nikkeibp.co.jp/article/NPC/20060824/246393/?ST=pc_office2007_print&P=1 マクロブックを「信頼できる場所」に保存する、ではだめですか?
お礼
ありがとうございました 参考にします
エクセルの例で説明します。 「Officeボタン」 ↓ 「エクセルのオプション」 ↓ 「セキュリティセンター」 ↓ 「セキュリティセンターの設定」ボタン ↓ 「マクロの設定」 で、今は 「警告を示せずにすべてのマクロを無効にする」 か 「警告を示してすべてのマクロを無効にする」 にチェックが入っていると思います。 これを 「すべてのマクロを有効にする」 に変更すれば、質問のような操作は必要なくなります。 ただし、他人が作った変なマクロも実行されてしまう可能性がありますから十分注意しましょう。
お礼
ありがとうございました
補足
ありがとうございます 希望どおりにできました。 でも「すべてのマクロを有効にする」は「推奨しません」とあり、それについてはedomin2004さんもこのことを指摘されていますが、特に問題はないのでしょうか? ウィルス対策などを一応とっていれば、それほど神経質にならなくてもいいのでしょうか?
お礼
ありがとうございます 参考にさせていただきます