MENU
カテゴリー
Yu
Excelに関する記事を配信中!
どうぞゆっくり見ていってください!

MsgBoxの使い方を極める!VBAで簡単ダイアログボックス作成

VBAでメッセージボックスを表示した画像

ExcelのVBAでは必ずというほどメッセージボックスを使用する場面が多くあります。

簡単でシンプルな使い方もあればアイコンを使用した方法など、知っていると便利な使い方がたくさんあります。

Yu

そこでこの記事ではVBAを使用したメッセージボックスの使い方を紹介します。

慣れてくるととても便利なので、この記事を読みながら実際にコードを入力していきましょう。

目次

メッセーボックスを使うと何ができる?

VBAのメッセージボックス1

 

上の画像で「おはよう」と記載しているように、自分で考えたメッセージを簡単に作成することができます。

また、アイコンやメッセージタイトルを設定することもできますし、「はい」と「いいえ」のように選択形式を変更することも出来ます。

はいといいえのメッセージボックス

メッセージボックスの基本的な使い方

まずは一番シンプルなメッセージボックスの使い方を紹介します。以下のVBAコードをコピペしましょう。

Sub test()
    MsgBox "おはよう"
End Sub

msgboxがメッセージボックスを表し、””の中に好きな文字を入れることでメッセージを入れることができます。

VBAのメッセージボックス1

今回は標準モジュールに入れました。

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

 

ユーザーフォームの場合もメッセージボックスを使用することができます。

講師

モジュールについてはVBAのmodule(モジュール)とは?意味や削除の方法を解説の記事でも解説しています。

メッセージボックスの種類と基本構文

続いて、メッセージボックスの種類について紹介します。

アイコンの種類

以下のコードをコピペしましょう。

Sub test()
    MsgBox "おはよう", vbQuestion
End Sub

上記のコードでアイコンが設定できます。

VBAのメッセージボックス4

アイコンは4種類標準で変更することができ、最後のコードを以下のように変更することで設定できます。

アイコンの種類意味
vbCritical✖印。警告を表示。
vbExclamation!マーク。注意を表示。
vbQuestion?マーク。お問合せなど。
vbInformationiマーク。情報を表示。

以下の画像を見ると参考になります。

メッセージボックスに出てくるアイコン4種類
Yu

アイコンがあることで視覚的に分かりやすくなりますね!

ボタンの種類

ボタンの種類を6つ紹介します。

ボタンの種類意味
vbOKOnlyOKのみ
vbOKCancelOKとキャンセル
vbAbortRetryIgnore中止、再試行、無視
vbYesNoCancelはい、いいえ、キャンセル
vbYesNoはい、いいえ
vbRetryCancel再試行、キャンセル

 

VBAコードの際はボタンの種類+アイコンで設定できます。

以下のコードを入力すると、OKとキャンセルボタンが表示されます。

Sub test()
    MsgBox "おはよう", vbOKCancel + vbInformation
End Sub
VBAのメッセージボックス6

 

画像と照らし合わせると以下のようになります。

6種類のメッセージボックスを集めた画像

メッセージボックスにタイトル設定

タイトルを設定する場合は以下のように、最後に””で囲みながら入力することで好きなタイトルを設定できます。

Sub test()
    MsgBox "おはよう", vbYesNo + vbInformation, "タイトル"
End Sub

 

タイトルを修正したメッセージボックス

メッセージボックスの実務での活用例

IFを使用することで条件分岐が可能です。

以下のコードをコピペしましょう。

Sub test()
    Dim 確認 As Integer
    確認 = MsgBox("おはよう", vbYesNo + vbInformation, "タイトル")
    
    If 確認 = vbYes Then
        MsgBox "おはようです"
    Else
        MsgBox "おはようではありません"
    End If
    
End Sub

はいを選択するかいいえを選択するかでその後のメッセージが変わります。

IFを使用したメッセージボックス

また、VBA以外でもIFは関数でもよく使います。以下の記事も見てみましょう。

以下のExcel記事もおすすめです。

メッセージボックスで改行する

改行する場合は以下のVBAコードを参考にしましょう。

Sub test()
    MsgBox "おはよう" & vbCrLf & "よろしくお願いします!"
End Sub

& vbCrLf & で改行し、その後””の中に好きな文字を入力することで改行後の文字を設定できます。

改行したメッセージボックス

デフォルトボタンの設定

メッセージボックスでは最初に「はい」か「いいえ」のデフォルトを設定することも出来ます。

Sub test()
    MsgBox "おはよう", vbOKCancel + vbInformation + vbDefaultButton2, "タイトル"
End Subぼ

ボタンの1~4を変更することで、左から数えて好きなボタンを初期設定できます。

デフォルトをキャンセルボタンにしたメッセージボックス

 

CaSe(ケース)を使用した条件分岐

IFを使用した方法以外にも、メッセージボックスの条件分岐でよく使われるのがCaSeです。

Sub test()
    Dim 確認 As Integer
    確認 = MsgBox("おはよう", vbYesNo + vbInformation, "タイトル")
    
    Select Case 確認
        Case vbYes
            MsgBox "おはようです"
        Case vbNo
            MsgBox "おはようではありません"
    End Select
    
End Sub
講師

条件によって様々な実行条件を設定するとき、Caseを使用した場合の方がVBAコードが見やすくなることもあります。

 

まとめ

今回はVBAを使用したメッセージボックスの使い方について紹介しました。

私の場合は最初シンプルな方法で練習し、慣れてきたらアイコンを使用していきました。

アイコンが無い方が分かりやすいこともありますので、まずはメッセージボックスのシンプルな方法から試してみるのもおすすめです。

 

Excelの機能を使いこなすと、仕事の効率化から大きな時間短縮に繋がります。

仕事術のスキルが増えるとプライベートの時間を時間を増やすことができますので、当サイトで得た知識を是非活用していきましょう。

【ステップ15へ進む▼▼】

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次