office  配布ファイルのマクロを
有効にして開かせたい


  
要VBA
TOPExcel/Word/PowerPoint
○ポイントはブック保護とシートの非表示
マクロが有効な場合に警告が出るのは標準ですが、マクロが無効の場合はセキュリティポリシー上何の問題もないので普通は何も起こりません。 しかし、マクロを使って何らかの機能を付けた場合は、「マクロを有効にしてファイルを開いてほしい」って思いますよね。
そこで、ブック保護機能を使って、簡単にマクロの有効化を促すファイルをつくる方法を紹介します。つまり、シートを非表示にしたうえで、ブック保護を掛けておき、ファイルを開くときにマクロでブック保護とシート非表示を解除することにより、結果的に、マクロ無効の場合はファイルが開けないのと同じ効果を出せるのです。

(1) [ワークシート挿入タブ]でワークシートを1枚追加

(2) (1)で追加したシートのタブで右クリックして[名前の変更(R)]

(3) 名前を入力する(たとえばTOP")(図1)
office
(図1)シートを挿入して名前変更

(4) "TOP"以外のシートのタブを右クリック>[非表示(H)]

  (非表示にしたシート名は"Sheet1","Sheet2","Sheet3"とする)
  (この段階でシート"TOP"だけが表示される状態)

(5) シート"TOP"の適当なセルに”マクロを有効にしてください”と入力する。

(6) [校閲]タブ>「変更」グループ>[ブック保護]

(7) ブックの保護ダイアログ(図2)の「シート構成(S)」にチェック
office
(図2)ブック保護ダイアログ

(8) ブックの保護ダイアログの「パスワード(P)」に AAA と入力して[OK]

(9) 「パスワード確認」ダイアログで再入力後[OK]

(10) VBEを開いてThisWorkbookのコードウインドウを開く

(11) Workbook_Openイベントプロシージャのコード例は下記
(12) VBEのプロジェクトエクスプローラ(図3)で現在開いているプロジェクトを右クリック[VBAProjectのプロパティ]>「保護」タブ
office
(図3)VBEプロジェクトエクスプローラ

(13) VBAProjectのプロパティダイアログ(図4)表示
office
(図4)VBプロジェクトをパスワード保護

(14) 「プロジェクトを表示用にロックする(V)」にチェック

(15) 「パスワード(P)」にパスワード入力

(16) 「パスワードの確認入力(C)」にパスワード再入力後[OK]

(17) VBEを閉じてファイルを保存終了

○こんな時に使える
・マクロを有効にしてファイルを開かせたい

○応用
EXCEL2000の場合はこちら
・デジタル署名を利用する
ファイルを期限付きにしたい
期限が来たら自動的に消えるファイル

○注意
このパスワード保護はWindowsのシステムの中では比較的弱いものです。本当に重要な会社データや個人情報などは、専用機密ソフトなどを使って、パソコンや記録媒体ごとに保護を施すことをお勧めします。