0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Excel VBA】InputBox関数|入力ボックスを表示する方法と注意点

0
Last updated at Posted at 2025-07-23

この記事ではInputBox関数の使い方と注意点について解説します。
他のよく使うVBA関数一覧はこちら。

InputBox関数の使い方と注意点

InputBox関数は、ユーザーに文字列や数値などの入力を求めるための関数です。
VBAで簡易的な入力フォームを表示したい場合に便利です。

構文

InputBox(プロンプト [, タイトル] [, デフォルト値] [, X位置] [, Y位置] [, ヘルプファイル] [, コンテキスト])
  • プロンプト : 入力を促すメッセージ(必須)
  • タイトル : ウィンドウのタイトルバーに表示する文字列(省略可)
  • デフォルト値 : 初期表示される入力文字列(省略可)
  • X位置/Y位置 : ウィンドウの表示位置(省略可。指定しないと自動配置されます)
  • ヘルプ/コンテキスト : ヘルプボタン表示時のヘルプファイル情報(省略可)
  • 戻り値 : ユーザーが入力した文字列。キャンセルされた場合は空文字が返ります。

使用例

ユーザーに名前の入力を求める

Sub Sample()
    Dim name As String
    name = InputBox("あなたの名前を入力してください")

    MsgBox "こんにちは、" & name & "さん!"
End Sub

▶ 出力結果
sample01_1.png

(ユーザーが「サンプル太郎」と入力した場合)
sample01_2.png

タイトル・初期値を指定する

Sub Sample()
    Dim city As String
    city = InputBox("出身地を入力してください", "出身地の確認", "東京")

    MsgBox "出身地:" & city
End Sub

▶ 出力結果
sample02_1.png

(ユーザーが「東京」と入力した場合)
sample02_2.png

入力された数値を計算に使う

Sub Sample()
    Dim num As String
    num = InputBox("数値を入力してください")

    If IsNumeric(num) Then
        MsgBox val(num) & " は2倍にすると " & Val(num) * 2
    Else
        MsgBox "数値を入力してください"
    End If
End Sub

▶ 出力結果
sample03_1.png
数値が入力されれば計算され、それ以外(数値以外の文字や空欄)の場合はエラーメッセージを表示します。
sample03_2.png
sample03_3.png

⚠️注意

キャンセルを押すと空文字("")が返る

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

    If result = "" Then
        MsgBox "キャンセルされました。"
    Else
        MsgBox "入力値:" & result
    End If
End Sub

▶ 出力結果
warn01_1.png
入力があれば入力値を表示し、空欄やキャンセルの場合はエラーメッセージを表示します。
wanr01_2.png
warn01_3.png

入力はすべて「文字列」として返る

数値を入力しても、戻り値の型は文字列 (String) です。
数値として処理したい場合は Val や CLng などで変換が必要です。

Sub Sample()
    Debug.Print TypeName(InputBox("数値を入力してください"))
End Sub

▶ 出力結果

String

バリデーション(入力チェック)は自前で行う必要がある

Sub Sample()
    Dim x As String
    x = InputBox("数値を入力してください")
    
    If IsNumeric(x) Then
        ' OK
    Else
        MsgBox "無効な入力です"
    End If
End Sub

▶ 出力結果
warn02_1.png
数値以外や空欄の場合はエラーメッセージを表示します。
warn02_2.png

関連するVBA関数

  • MsgBox関数
  • CStr関数
  • IsNumeric関数

その他のVBA関数

【Excel VBA】VBAでよく使う関数一覧&基本の使い方

参考リンク

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?