俺の開発研究所

Ruby on Rails、Linux、Windowsを中心にIT技術系の備忘録とか。よく忘れるので。

*

VBAでファイル保存の確認メッセージを非表示にする方法

      2014/12/11

ExcelのVBAでマクロを埋め込んだファイルなどは、改変されると困るのでファイルを読み取り専用にすることが多い。

しかし、読み取り専用でファイルを開いた場合、ユーザーの操作後に閉じようとすると、必ずファイル保存の確認メッセージが表示される。

読み取り専用で開いているので、そのファイルは保存することはなく、この表示が意外といちいち鬱陶しい。

なので、このファイル保存の確認メッセージを非表示にする方法を調べてみた。

スポンサード リンク

まずは、ThisWorkbookのソースコードに「Workbook_BeforeClose」(ワークブッククローズ前イベント)を追加する。

ソースコードの上あたりにあるプルダウンで、以下を選択し、サブプロシージャを追加する。

  • オブジェクト…「Workbook」
  • プロシージャ…「BeforeClose」

そのサブプロシージャの中に、「Me.Saved」の値を「True」に設定してやれば、ファイル保存の確認メッセージを非表示にできる。

この非表示にするのは、ファイルを読み取り専用で開いている場合のみでいいので、「ActiveWorkbook.ReadOnly」プロパティの値が「True」の場合という条件を入れてやる方がいい。

実際のソースは以下のような感じです。

以上。

 - VBA