• ベストアンサー

Excel2007のマクロセキュリティ設定について

 質問させていただきます.  どうぞよろしくお願いいたします.  Excel2007のマクロを有効にするタイミングを,2007より前と同じように ブックを開いたときにしたいのですが,設定方法はあるのでしょうか??  2007で「開発」→「マクロのセキュリティ」→「マクロの設定」で 「警告を表示して全てのマクロを無効にする」にした場合, ツールバーの「オプション」         →「このコンテンツを有効にする」         →「OK」 と毎回3回もマウスカーソルで選択しなければならず, また,(2003まではデフォルトでブックオープン時にマクロ有効設定できていたので) ブックが開いている際はマクロ有効設定済みと勘違いして,他のアプリから マクロ実行しようとしてしまうなど,よくトラブルを起こしております.  ボタン操作時も,SheetChange時も常に気をつけるしか方法は無いのでしょうか??  もし何かアドバイスいただけることがございましたら, 是非よろしくお願いいたします.

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 私には、ご質問の内容が良く理解できません。 >他のアプリからマクロ実行しようとしてしまうなど,よくトラブルを起こしております. もともと、他のアプリから実行するなら、通常は、オートメーションを使うのですから、セキュリティも何も関係ないのではありませんか?仮に、同じOffice 内のWordからの立ち上げでも、そのような表示はされません。Application 側のセキュリティ設定は素通りになるはずです。Miscrosoft 以外だとすれば、他のアプリといっても、非常に限られているはずですが。Shell でアプリケーションを実行すれば、発生しますが、そのようにも思えませんし。 これは、あくまでも、ExcelならExcelの中での約束ごとにしか過ぎないはずです。 もし、Excel to Excel だとしても、セキュリティで、マクロを有効にして開いたブックなら、別に呼び出しに問題が発生するとは思えません。 もし、マクロでブックを呼び出して開くときに、セキュリティを変更するなら、以下のようにすればよいと思います。 Sub Test()  If Application.AutomationSecurity <> msoAutomationSecurityLow Then   Application.AutomationSecurity = msoAutomationSecurityLow  End If   Workbooks.Open "TestBook1.xlsm"   Application.AutomationSecurity = msoAutomationSecurityByUI '戻す End Sub なお、このマクロの知らない人のために説明しておくと、あくまでも、片方のブックをマクロを有効にして開けていないと変更できませんし、これはマクロのみの設定で、アプリケーションのセキュリティを変えるコードではありません。

camputer
質問者

お礼

 どうもありがとうございます!  教えていただいたコードをいろいろ試してみました. 知らないことばかりなので非常に勉強になりました. お詳しい方に閲覧していただけて助かりました.どうもありがとうございました.

その他の回答 (1)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

2007で「開発」→「マクロのセキュリティ」→「信頼できる場所」で 「新しい場所を追加する」で現在エクセルファイルを置いている場所(フォルダ)をすべて追加してください。 そのフォルダにあるエクセルファイルのマクロはすべて有効になります。 注意:第三者からもらったエクセルは確認前に「信頼できる場所」へは置かない方がいいのでご注意ください。

camputer
質問者

お礼

どうもありがとうございます! 「信頼できる場所」の設定がございましたか.勉強になりました. 自分の開発するフォルダをすべて追加しました. ご親切にどうもありがとうございました.

関連するQ&A