Excel VBAでマクロを実行するとき、処理の開始と終了をメッセージで確認できると、ミスの防止や操作性の向上に役立ちます。
例えば、
- マクロの実行ボタンを誤ってクリックし、意図しないデータ変更が発生してしまう。
- 処理がすぐに終了するマクロや、処理前後の違いが把握しにくいマクロでは、処理が終了したのかどうかの確認が手間になる。
- マクロの終了時、次のアクションや確認事項を明示することで手順を誘導し、操作性を向上させたい。
などの対応には、画面にメッセージを表示することが有効です。
以下は、開始時の実行確認と終了時のメッセージを表示するシンプルなサンプルです。
VBAサンプル
開始時は、処理を実行するかを確認するメッセージの表示し、「いいえ」が選択された場合は実行を終了します。
終了時は、メッセージを表示するだけです。
Sub 開始時の実行確認と終了時のメッセージ() Dim 開始確認 As Long '開始時の実行確認' 開始確認 = MsgBox("〇〇の処理を実行しますか?", vbYesNo) If 開始確認 = vbNo Then Exit Sub '「いいえ」なら終了' '(実行したい処理を記載)' '終了時のメッセージ' MsgBox "処理が終了しました" & vbCrLf & "〇〇を確認してください。" End Sub
補足説明
- メッセージの表示方法(ボタンの種類や、タイトルなど)を調整することはできますが、とりあえず最低限のシンプルなものです。
私はこれで十分ですが、もし調整したい場合は、以下にある引数を指定します。
- ”(実行したい処理を記載)”の箇所に具体的な処理を記載します。
- メッセージに改行があった方が読みやすいケースもあるので、上記サンプルの「終了時のメッセージ」は、vbCrLf を文字連結で利用して改行しています。
当該箇所を復帰文字 (Chr(13))、改行文字 (Chr(10))としても改行可能です。
以上、Excel VBAで、開始時の実行確認と終了時のメッセージを表示する方法でした。
なお、WordなどのVBAも同様です。