- ベストアンサー
エクセルでWorkbook_BeforeSaveイベントについての疑問
エクセル2000です。 http://odn.okwave.jp/qa3608360.html の関連質問ですが、これだけでも結構ですのでなにとぞご教示ください。 標準モジュールに以下の3つのマクロを書きました。 Sub text_表示() MsgBox "表示させました。" End Sub Sub text_非表示() MsgBox "非表示にしました。" End Sub Sub 保存() ActiveWorkbook.Save End Sub ThisWorkBookモジュールにこう書きました。 Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Call text_表示 Application.OnTime Now, "text_非表示" End Sub これで、手動でBOOKを保存すると、まず、MsgBox "表示させました。" そして MsgBox "非表示にしました。" が実行され、当然ながら書いたとおりの働きをします。 ところが、Sub 保存() でマクロからBOOKを保存すると、MsgBox "表示させました。" だけが実行され、MsgBox "非表示にしました。"は実行されません。 どうして、Application.OnTime Now, "text_非表示"は無視されたのでしょうか?
- みんなの回答 (3)
- 専門家の回答
お礼
何度も有難うございます。 > 一度保存をキャンセルし、必要なタイミングで自前で保存処理を > 行うのではダメなのですか? (^0_0^)ナルホド 目からウロコが・・・・。 素晴らしい解決策です。 KenKen_SPさま、いつも有難うございます。