EXCELのVBAではメッセージボックス(Msgbox)という機能がありますが、使用してますか?
この機能を使えると、ユーザーにお知らせをしたり、注意喚起したりできるほか、ユーザーに判断を任せることもできます。
マクロ機能を組む際のデバグにも使えたりしますよ。
本記事では、この中から、「VBAでMsgboxを表示させる・タイトルをつける・改行して見やすくする」について解説します。
この記事の内容
1.EXCEL VBAのメッセージボックス(Msgbox)とは?
こんにちは。エクセルマン・ブリーダーのしもむぎ(@re_znd13)です。
メッセージボックスというのは、次の画像のようなものを言います。
本記事では、このメッセージボックスを小さなウィンドウとしてポップアップさせる方法について見ていきます。
画像の「お知らせです」という部分がメッセージ。自由に変えることができます。改行も可能ですので、その方法も解説しますね。
「Microsoft Excel」という部分はタイトル。こちらも変更できます。
OKのボタンについても変更ができるのですが、こちらは別の機会に解説することとします。
2.メッセージボックスを表示させる方法
メッセージボックスの使い方を見ていきますね。
まずは自由にメッセージを表示させてみましょう。
先に示した画像のメッセージボックスを表示させたVBAのソースコードは以下の通り。
“(ダブルクォーテーション)で囲った部分がメッセージです。
タイトル等をまだ設定していない状態ですので、「Microsoft Excel」というデフォルトのタイトルやOKボタンが表示されています。
Sub メッセージボックス()
MsgBox "お知らせです"
End Sub
“(ダブルクォーテーション)で囲った部分は()で綴じても構いません。()で綴じる必要があるケースもあるのですが、メッセージを表示させる場合にはどちらでもOKです。
3.メッセージボックスにタイトルをつける方法
先ほどのコードではメッセージ部分のみ設定をしていました。
これに「お知らせ」というタイトルを付けてみましょう。
Sub メッセージボックスタイトル付き()
MsgBox "お知らせです", , "お知らせ"
End Sub
上の画像が実行結果です。
「お知らせ」というタイトルが付きましたね。
メッセージ部分(お知らせです)とタイトル部分(お知らせ)の間には、ボタンの設定値(省略可能)が入るのですが、本記事では触れませんので、省略しています。別記事で解説しますね。
4.メッセージボックスで改行する方法
ここまでの例では、メッセージが短いものでしたが、長く表示したい場合もありますよね。
そうすると、改行して見やすくしたいなというケースも出てくると思います。
その方法を見ていきましょう。
ソースコードは以下の通りです。タイトルの設定は省略しています。
Sub メッセージボックス改行あり()
MsgBox "お知らせです" & vbCrLf & "改行をしてみました"
End Sub
上の画像が実行結果です。
“(ダブルクォーテーション)で囲ったふたつの文字列を、&(アンド)でつなぐ際に、「vbCrLf」というコードを挟んでいます。これが改行のコードになります。
改行を使うことで長文も見やすくなりますので、ぜひ使用したいテクニックですね。
5.まとめ
本記事では、 「VBAでMsgboxを表示させる・タイトルをつける・改行して見やすくする」について解説 しましたが、いかがでしたか?
今回の内容で、ユーザーへのお知らせができるようになりましたね。
ユーザーに判断を任せることや、変数等を表示してデバグをすることなど、他にもいろいろな使い方ができますので、時機を見て解説しますね。