メッセージボックスビルダー

メッセージボックスビルダーは、メッセージボックスと 入力ボックスのコードを生成します。VBA EditorのUIメニューにあります:

messagebox builder location

そしてエクセルのリボン:

メッセージボックス

vba messagebox builder

メッセージ・ボックスは、ユーザーを促すために使用されます。デフォルトのMessageBox (vbOKOnly)は、情報を伝達し、単に’ok’をクリックするようユーザーに要求します。

msgbox "完了"
vba code writer

その他のMessageBoxタイプは、ユーザーに選択を要求します(例:OK / キャンセル、再試行 / キャンセル):

vba messagebox builder options

プレビュー領域には、現在設定されている MessageBox が表示されます。オプションを変更するだけで、すぐにプレビュー領域には更新された MessageBox が表示され、生成コード領域には生成されたコードが表示されます:

vba messagebox builder preview

特筆すべきことがいくつかある:

デフォルトボタンは、”Buttons and Default Button “セクションの特定のボタンをクリックすることで定義できます。これは、MessageBoxが表示されているときにユーザーがEnterをクリックした場合に押されるボタンです。前の2つの画像では、”No “というオプションがデフォルトボタンとして選択されています。

MessageBox は、ユーザーがクリックしたボタンに対応する値を出力します。生成されたコードのボックスでは、Select Case ステートメントがさまざまなオプションを処理するために使用されていることがわかります:

vba messagebox builder generated code
ケースを選択 answer
   ケース vbYes
   ケースvbNo
   ケース vbCancel
選択終了

プロシージャは、Yes、No、Cancelのいずれが選択されたかに応じて異なるアクションを実行する必要があります。これを実現するには、Select Case 文に必要なアクションを入力します:

Select Case answer
    ケース vbYes
        range("a1").value = "yes"
    ケース vbNo
        range("a1").value = "no"
    ケース vbCancel
        Goto EndMacro
    選択終了

注意: OKOnly MessageBoxタイプでは、オプションが1つしかないため、アクションを定義する必要はありません。

入力ボックスビルダー

vba inputbox builder

InputBoxはユーザーに値の入力を求める。その値は変数に代入されます:

Dim answer As Double
answer = Application.InputBox("Interest Rate", "金利を入力してください", Type:=1)
vba interest rate builder

ビルダーのInputBox部分は、MessageBox部分とほとんど同じように動作する。ただし、注目したいオプションが2つあります。

入力タイプ

vba messagebox builder input type

入力タイプは、VBAにユーザーから期待される入力のタイプを伝えます。これにより、VBAは入力された値が有効かどうかを判断することができます。

注: エラーを防止するため、入力タイプ=セル参照を扱う場合は、Application.ScreenUpdatingをTrueに設定する必要があります: Application.ScreenUpdating = True

デフォルト値デフォルト値オプションは、入力エリアに事前に入力します。

vba inputbox generator default value

[get_templateテンプレート=”template-parts/pagination/am-documentation”]。

Excel の自動化を開始