Excel VBA:入力用ダイアログボックスの使い方|InputBox

VBAで入力用のInputBoxを使用するサンプルを掲載しています。




Homeに戻る > Excel 数値・文字列・検索・印刷のTipsへ


Excel VBAでユーザーに数値や文字を入力してほしい場合、InputBoxを使うと簡単です。

取得するデータは、引数Typeで数値のみとか文字のみとかに指定できます。

InputBoxの構文:

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実行コード

上の名前入力は、Typeを文字列型の「2」に指定しています。

下の年齢入力は、Typeを数値型の「1」に指定しています。

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



Homeに戻る > Excel 数値・文字列・検索・印刷のTipsへ

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


Copyright (c) Excel-Excel ! All rights reserved