【Excel VBA】メッセージボックスを表示する基本コードとやさしい解説

VBA & Excel
スポンサーリンク
スポンサーリンク

はじめに

VBAで作業をしていると、
「処理が終わったことを知らせたい」
「ユーザーに確認してほしい」
「エラーが起きたことを伝えたい」
そんな場面がよくあります。

そこで活躍するのが メッセージボックス(MsgBox) です。

ここでは、メッセージボックスの基本の使い方と、
実務で役立つ書き方を解説します。

まずはコードを確認

MsgBox "処理が完了しました。"

もっともシンプルな書き方です。
画面にメッセージを表示するだけの、やさしい通知です。

メッセージボックスの基本

メッセージを表示する

MsgBox "こんにちは"

タイトルをつける

MsgBox "処理が完了しました。", , "完了メッセージ"

第2引数は省略し、タイトルだけ指定できます。

ボタンを指定する

OK / キャンセルを表示する

MsgBox "実行しますか?", vbOKCancel

はい / いいえ を表示する

MsgBox "保存しますか?", vbYesNo

アイコンをつける(情報・警告・エラー)

MsgBox "完了しました", vbInformation
MsgBox "注意が必要です", vbExclamation
MsgBox "エラーが発生しました", vbCritical

押されたボタンを判定する

Dim result As VbMsgBoxResult
result = MsgBox("保存しますか?", vbYesNo)

If result = vbYes Then
MsgBox "保存します。"
Else
MsgBox "キャンセルしました。"
End If

ユーザーの選択に応じて処理を分岐できます。

具体的な例で理解する

処理完了を知らせる

MsgBox "データの更新が完了しました。", vbInformation, "完了"

やさしい通知としてよく使います。

危険な操作の前に確認する

If MsgBox("本当に削除しますか?", vbYesNo + vbExclamation, "確認") = vbYes Then
'削除処理
End If

実務で特に大切なパターンです。

エラー時にメッセージを表示する

On Error GoTo ErrHandler

'処理

Exit Sub

ErrHandler:
MsgBox "エラーが発生しました:" & Err.Description, vbCritical, "エラー"

ユーザーに状況を伝えることで、安心感が生まれます。

MsgBox の引数まとめ(実務でよく使うもの)

種類内容
vbOKOnlyOKのみ
vbOKCancelOK / キャンセル
vbYesNoはい / いいえ
vbInformation情報アイコン
vbExclamation警告アイコン
vbCriticalエラーアイコン

組み合わせて使うこともできます。

注意点(実務で気をつけたいこと)

  • メッセージが多すぎると作業が止まる
    → 必要な場面だけに絞ると、ユーザーが迷いません。
  • 長い文章は読まれにくい
    → 伝えたいことを短く、やさしく。
  • 自動処理では MsgBox が止めてしまう
    → バッチ処理では使わない方が安全です。

まとめ

  • MsgBox “メッセージ” で簡単に表示できる
  • ボタンやアイコンを指定して、状況に合わせた通知が可能
  • 押されたボタンを判定して処理を分岐できる
  • 実務では「確認」「警告」「完了通知」で特に役立つ
  • メッセージは短く、必要な場面だけに絞るのが安心

メッセージボックスは、
ユーザーとの“ちいさな対話”を支える大切な機能です。


decopon
decopon

メッセージボックスは、処理の節目にそっと寄り添う存在です。
必要なときにだけ、やさしく声をかけるように使うと、
VBAの動きがぐっとわかりやすくなります。

moco
moco

ぽこんって出てくるメッセージ、かわいいよね。
VBAは、そんな小さな声かけも上手なんだね。

コメント

タイトルとURLをコピーしました