簡単な輸出インボイス作成マクロ (24)

XI)メッセージボックス(MsgBox関数)


「MsgBox関数」は、VBAに備えられている、VBA関数の1つです。

VBAには、Excelで使われる関数と、VBA独自の関数があります。

関数については、「簡単な輸出インボイス作成マクロ」の第2弾で取り上げる予定です。

私は、「輸出インボイス」のマクロを作成する際に、「MsgBox関数」を使用して、メッセージ「終了です。」、または「終了です。お疲れ様でした。」等をよく挿入します。

「マクロ」は、とにかく、実行速度が速いので、終了しても、終了したのかどうか、書類作成者が気づかないことがあるので、この「メッセージ」で終了を認識します。

Sub Invoice1()
Dim INVNO As String
  
  '入力
Sheets("SI").Select
    INVNO = Cells(3, 2).Value

'出力
Sheets("INV").Select
    Cells(5, 11) = INVNO

MsgBox "終了です。"
End Sub


上記の「プロシージャ」を実行すると、下記の「メッセージボックス」が現れて、メッセージ「終了です。」を表示します。

[OK]ボタンをクリックすると、「プログラム」が終了します。


コード入力中に、[MsgBox]と入力して、スペース(半角)キーを押すと、構文ヒントが表示されます。


「メッセージ」を表示するだけでも、文字列、変数・プロパティの値、計算結果等、いろいろな情報を「メッセージ」として表示することが可能な、とても便利な関数です。

「MsgBox 関数」の構文

MsgBox 関数の構文は、次のような書式構成になっています。

MsgBox(prompt, [buttons], [title], [helpfile], [context])


[prompt]は、必ず指定する必要がありますが、他の項目は省略しても構いません。

[helpfile]と[context]が使われることは、あまりないようです。

指定項目 内容
prompt 「メッセージボックス」内に表示される「メッセージ」。
buttons 表示する「ボタン」の種類と個数、「アイコン」の「スタイル」を指定する。
title 「メッセージボックス」内の「タイトル バー」に表示する文字列。
helpfile 使用する「ヘルプ ファイル」の名前を示す文字列式を指定する。
context 「ヘルプトピック」に指定した「コンテキスト」番号を表す数式を指定する。


更に、「MsgBox 関数」を利用して、対話型の「プロシージャ」作成も可能です。

対話型で「MsgBox 関数」を使用する例は、また後日ご紹介します。