目次

目的・完成イメージ

今回は、以下の画像のようなメッセージを Excel の画面上に表示するマクロを作成してみたいと思います。

MsgBox 関数の結果。
「message」の文字を表示してみた画面です。「OK」ボタンをクリックすると、このダイアログボックスは閉じられます。

VBA の MsgBox 関数を使用すれば、自由なメッセージを Excel の画面上に表示することができるようです。

目次まで戻る

その方法の一例

Excel VBA のコード:

Sub macro_003011()

MsgBox ("message")

End Sub

上のマクロ「macro_003011」を実行すると、以下の画像のようなメッセージが表示されると思います。

MsgBox 関数でメッセージを表示した結果。
macro_003011 の実結果です。右上隅にある「X」ボタンか「OK」ボタンをクリックすると、このメッセージは閉じられます。

目次まで戻る

日本語を表示

MsgBox 関数で日本語を表示することもできるようです。改行を入れたい場合も考えて、改行の入った日本語の文章をメッセージとして表示してみたいと思います。

日本語はそのまま入力すれば良く、下記コード「macro_003011_001」中の定数「vbNewLine」が改行として認識されるようです。前後のアンパサンド( & の記号)で改行前後の文字と連結しています。

定数「vbNewLine」は OS 毎の最適な改行文字を出力してくれるようです。私の Windows10 パソコンでは、「vbNewLine」の文字は Chr(13) と Chr(10) に置き換わって出力されていました。 Macintosh のパソコンでは、また違った結果になるのだと思います。

改行文字は目に見えないですが、パソコンの内部的には、Windows で Chr(13) と Chr(10) が入力されている場合には、改行を表示するという風に文字として処理されているようです。

Excel VBA のコード:

Sub macro_003011_001()

MsgBox ("メッセージ" & vbNewLine & "メッセージ") 'vbNewLine が最適な改行文字に変換されて出力されるようです。

End Sub
MsgBox 関数で改行の入った文章をメッセージとして表示した結果。
日本語の改行の入った文章をメッセージとして表示してみました。

目次まで戻る

テスト環境

  • Windows 10
  • Microsoft Office Excel 2003

目次まで戻る

あとがき

MsgBox 関数のダイアログボックスには、「OK」ボタンだけではなく、「はい」「いいえ」「キャンセル」などのボタンも表示できるようです。どのボタンを押したのかによって、処理を分岐したりできるようです。そのことは、また次の機会に投稿していきたいと思います。

一行の簡単なマクロでしたが、画面に目に見える形で実行結果を確認できるので、できた感がありました。

以上、閲覧ありがとうございました。

目次まで戻る

前後の投稿