マクロ実行前に確認メッセージを表示したい
VBAマクロを実行する際、ボタンを押して処理スタートといった事は多いです。
当方へご依頼頂く際も、基本的にはボタンを押したら、処理を進める形で組み込みます。
大企業様など、色々な部署でマクロ使用を想定した場合、
マクロ開始前に確認ボタンを表示したいと言われるケースがあります。
マクロ実行前に確認メッセージを表示するサンプルコード
’■マクロ処理開始前に、実行するかどうかポップアップで確認する Public Function Call_StartCheckMsgBox() As Boolean If MsgBox("処理開始しますか?", vbYesNo + vbQuestion, "確認") = vbYes Then Call_StartCheckMsgBox = True '「はい」選択時、Trueを戻り値として返す Else MsgBox "処理をキャンセルしました" '「いいえ」選択時、キャンセルしたメッセージ End End If End Function
使い方
実際の使い方は以下です。
Public Sub sample() 'マクロ処理開始前に、実行するかどうかポップアップで確認する Call_StartCheckMsgBox 'ここにメインの処理を記載(ポップアップでいいえを選んだ場合は処理されない) MsgBox "終了しました" End Sub
注意点
- Functionとしながら戻り値をもらわない形なので、少し変な記載方法ではあります。
※自分で使用するのがメインですのでご容赦ください。 - 本来であればFunction内でEndではなく、戻り値もらって処理分岐のがコードは見やすいです。
コメント