入力用ダイアログボックスを使う(InputBox) : Excel(エクセル)

Excel Tipsメニューに戻る

スポンサーリンク





Excel VBAでユーザーに数値や文字を入力してほしい場合、InputBoxを使うと簡単です。
取得するデータは、引数Typeで数値のみとか文字のみとかに指定できます。


構文:
expression.InputBox(Prompt, Title, Default, Left, Top, HelpFile, HelpContextId, Type)

expression: Applicationオブジェクトを返すオブジェクト式
Prompt: ダイアログ ボックスに表示するメッセージ
Title: (省略可能)ダイアログ ボックスのタイトル
Default: (省略可能)テキストボックスに表示する初期値
Left: (省略可能)ダイアログボックスのX座標をポイント単位で指定
Top: (省略可能)ダイアログボックスのY 座標をポイント単位で指定
HelpFile: (省略可能)ヘルプファイル名を指定
HelpContextId: (省略可能)HelpFileで指定したヘルプファイル内のコンテキストID番号を指定
Type: (省略可能)返されるデータの型を指定。省略すると文字列 (テキスト) を返す

Typeの型
0: 数式
1: 数値
2: 文字列 (テキスト)
4: 論理値 (True または False)
8: セル参照 (Range オブジェクト)
16: #N/A などのエラー値
64:数値配列

スポンサーリンク





Excelシート画面

実行すると下記のInputBoxが表示されます。
メッセージは「あなたの名前を入力してください。 」で文字列入力に指定しています。
名前入力

次に下記のInputBoxが表示されます。
メッセージは「あなたの年齢を入力してください。 」で数値入力に指定しています。
年齢入力

実行するとB7に名前が、B8に年齢が表示されます。
入力シート

Excel VBA実行コード

Option Explicit

Private Sub CommandButton2_Click()
    Dim s As String
    Dim ln As Long
    
    s = Application.InputBox(prompt:="あなたの名前を入力してください。 ", Title:="質問1", Type:=2)
    Range("B7") = "あなたの名前は「" & s & "」です。"
    
    ln = Application.InputBox(prompt:="あなたの年齢を入力してください。 ", Title:="質問2", Type:=1)
    Range("B8") = "あなたの年齢は" & ln & "才です。"
    
End Sub

Excel Tipsメニューに戻る

スポンサーリンク






■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved