教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA 基本操作】MsgBox(メッセージボックス)の使い方(表示方法)について教えて!

f:id:m_kbou:20200418100639p:plain

マクロやVBAでメッセージを表示するには、MsgBox(メッセージボックス)を使用する必要があります。MsgBoxを使う事でユーザへの情報・警告・エラーの表示や処理の選択をさせる事が可能となります。また、MsgBoxを上手に活用すれば、マクロの使い勝手をワンランクアップさせる事も可能です。その使い方について紹介します。

 

 

構文

以下の様に記述します。

MsgBox[メッセージ]”,[アイコン+ボタン],”[タイトル]

[説明]:
[メッセージ]には表示するメッセージ内容を記述します。また、[アイコン+ボタン]にはアイコンの種類とボタンの種類を記述します。それぞれの種類については数字で表す事ができるため、その数値の合計値を記述します。以下に一覧を纏めたので参考にして下さい。[タイトル]にはメッセージ画面のタイトル名を記述します。また、各項目間は「,」(カンマ)で区切り、[メッセージ]と[タイトル]については「”」(ダブルクォーテーション)で囲みます。([アイコン+ボタン]及び[タイトル]については、省略する事も可能です)

f:id:m_kbou:20200530060648p:plain

[記述例]:

MsgBox "おはようございます。", 64, "あいさつ"

 

使い方

以下で具体的な使い方について説明していきます。

サンプル①

[プログラミング例]:

Sub メッセージ()

    MsgBox "おはようございます。", 64, "あいさつ"

End Sub

各項目には以下内容を記述します。

[メッセージ]:”おはようございます。”
[アイコン+ボタン]:情報メッセージアイコンと「OK」ボタンを表示するため64+0=64
[タイトル]:”あいさつ”

f:id:m_kbou:20210208112250p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210225084521p:plain

②結果は以下の様に表示されます。アイコンが情報メッセージアイコンで「おはようございます。」が表示されます。また、ボタンは「OK」ボタンのみ表示され、「OK」ボタンが選択されています。

f:id:m_kbou:20190424103245p:plain

画面の各パーツ詳細は以下の通りとなります。 

f:id:m_kbou:20190513181558p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

サンプル①の説明については以上です。

 

サンプル②

[プログラミング例]:

Sub メッセージ()

    MsgBox "おはようございます。", 273, "あいさつ"

End Sub

各項目には以下内容を記述します。

[メッセージ]:”おはようございます。”
[アイコン+ボタン]:警告メッセージアイコンと「OK」「キャンセル」ボタンを表示させ、第2ボタンを標準ボタンとするため、16+1+256=273
[タイトル]:”あいさつ”

f:id:m_kbou:20210208114154p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210225084552p:plain

②結果は以下の様に表示されます。アイコンが警告メッセージアイコンで「おはようございます。」が表示されます。また、ボタンは「OK」「キャンセル」ボタンの2種類が表示され、「キャンセル」ボタンが選択されています。

f:id:m_kbou:20190424103703p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

サンプル②の説明については以上です。

 

サンプル③

[プログラミング例]:

Sub メッセージ()

    MsgBox "おはようございます。", 563, "あいさつ"

End Sub

各項目には以下内容を記述します。

[メッセージ]:”おはようございます。”
[アイコン+ボタン]:注意メッセージアイコンと「はい」「いいえ」「キャンセル」ボタンを表示させ、第3ボタンを標準ボタンとするため、48+3+512=563
[タイトル]:”あいさつ”

f:id:m_kbou:20210208114334p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210225084611p:plain

②結果は以下の様に表示されます。アイコンが注意メッセージアイコンで「おはようございます。」が表示されます。また、ボタンは「はい」「いいえ」「キャンセル」ボタンの3種類が表示され、「キャンセル」ボタンが選択されています。

f:id:m_kbou:20190424103725p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

サンプル③の説明については以上です。

 

おわりに

MsgBoxを有効に使う事でユーザの入力間違えによる警告や判断作業を簡素化させる事がスムーズにできます。是非有効に活用し、使い勝手の良いツールを作成して下さい。

 

紹介動画

youtu.be