Excel/VBA

TOP

入力できるメッセージボックス「InputBox」を表示させる

入力できるメッセージボックス「InputBox」を表示させる方法の説明画像です

入力できるメッセージボックス「InputBox」を表示させる方法

ユーザーに何か入力してもらって、入力した値を元に処理を行うには「InputBox」というものを使用します。 下記のサンプルコードのように、InputBox(入力する内容)を記述することによりInputBoxを表示できます。

サンプルコード


Sub インプットボックス表示()

    Dim Inp As String
    Inp = InputBox("入力してください")
    
End Sub
        

上記のサンプルコードを実行することで下記のように入力できるメッセージボックス(InputBox)が表示され、ユーザーが入力した値が変数(Inp)に格納されます。

入力できるメッセージボックス「InputBox」を表示させる方法の説明画像です

InputBoxの具体的な使用方法

InputBoxの引数は下記のようになっています。

入力できるメッセージボックス「InputBox」を表示させる方法の説明画像です

第1引数(Prompt),第2引数(Title),第3引数(Default)を指定した場合は下記の通りとなります

入力できるメッセージボックス「InputBox」を表示させる方法の説明画像です

第4引数(XPos)と第5引数(YPos)を指定した場合は、XPosが画面上の左からの位置を指定でき、YPosが画面上の上からの位置を指定できるようになっています。

何も指定せずに、InputBoxを表示させた場合は画面の中央に表示されますが、下記のようにXPosを0,YPosを0と指定すると画面の左上にInputBoxが表示されます。

入力できるメッセージボックス「InputBox」を表示させる方法の説明画像です

第6引数の(HelpFile)と第6引数の(Context)はヘルプを表示させる引数ですが、現代ではほとんど使用されていないため省略しても問題ございません。


InputBoxのキャンセル処理

入力できるメッセージボックス「InputBox」を表示させる方法の説明画像です

InputBoxの戻り値は、入力された値が返ってきますが、「キャンセル」がクリックされた場合は空白「""」が返ってきます。

下記のサンプルコードのように、格納した変数「Inp」が空白だった場合は処理を終了させるなどの条件分岐が行えます。

サンプルコード


Sub インプットボックスキャンセル処理()

    Dim Inp As String
    Inp = InputBox("入力してください", "メッセージタイトル", "デフォルトメッセージ", 0, 0)
    
    'Inpが空白の場合処理終了
    If Inp = "" Then
        MsgBox "キャンセルされました"
        Exit Sub
    End If
    
    MsgBox "入力された値「" & Inp & "」"
    
End Sub