インプットボックスを表示する(InputBox関数・InputBoxメソッド)
2015/06/16
「InputBox関数」と「InputBoxメソッド」の違い
「InputBoxメソッド」の場合は、返すデータ型を引数で指定することができます。ユーザーにセル範囲を選択させる場合(データ型をRange型に指定)は、InputBoxメソッドを使用します。
また、[キャンセル] ボタンや [×] ボタンを押した場合、「InputBox関数」の場合は「空文字(””)」を「InputBoxメソッド」の場合は「False」を返します。
InputBox関数
result = InputBox ( Prompt [ Title, Default, Xpos, Ypos, HelpFile, Context ] )
【引数】
- Prompt ・・・ 表示する文字列
- Title ・・・ ダイアログボックスのタイトルバーに表示する文字列(省略可)
- Default ・・・ デフォルトで表示する文字列(省略可)
- Xpos ・・・ 左端位置(単位はTwip)(省略可)
- Ypos ・・・ 上端位置(単位はTwip)(省略可)
- HelpFile ・・・ ヘルプファイルのファイル名(省略可)
- Context ・・・ ヘルプトピックに指定したコンテキスト番号(省略可)
【戻値】
- result ・・・ ユーザーが入力した値(文字列型:String)
引数 Title を省略すると、「Microsoft Excel」となります。
引数 Helpfile に、使用するヘルプファイルの名前を使用することで [F1] キーを押してヘルプを参照できるようになります。このとき 引数 Context も指定する必要があります。
[キャンセルボタン] や右上の [×] ボタンを押した場合の戻り値は、空文字(””)となります。
Twip は、長さを表す単位で、1/20ポイントです。
InputBoxメソッド
result = Object.InputBox ( Prompt [ Title, Default, Left, Top, HelpFile, Context, Type ] )
【引数】
- Prompt ・・・ 表示する文字列
- Title ・・・ ダイアログボックスのタイトルバーに表示する文字列(省略可)
- Default ・・・ デフォルトで表示する文字列(省略可)
- Left ・・・ 左端位置(単位はポイント)(省略可)
- Top ・・・ 上端位置(単位はポイント)(省略可)
- HelpFile ・・・ ヘルプファイルのファイル名(省略可)
- Context ・・・ ヘルプトピックに指定したコンテキスト番号(省略可)
- Type ・・・ 定数:返すデータ型(省略可)⇒ 戻値データ型一覧表
【戻値】
- result ・・・ ユーザーが入力した値(Variant型:引数 Type で指定した型)
引数 Title を省略すると、「Microsoft Excel」となります。
引数 Helpfile に、使用するヘルプファイルの名前を使用することで [F1] キーを押してヘルプを参照できるようになります。このとき 引数 Context も指定する必要があります。
[キャンセルボタン] や右上の [×] ボタンを押した場合の戻り値は、「False」となります。
Left, Top は、Excel2007 以降ではどんな値を入れても前回の表示位置と同じ位置に表示されるます。
【戻値のデータ型を示す定数の一覧(Type)】
値 | 内容(戻値のデータ型) | 入力例 |
0 | 数式(String) | =A1+A2 |
1 | 数値(Double) | 55 |
2 | 文字列(String) | あいうえお |
4 | 論理型:True/False(Boolean) | True |
8 | セル参照(Range) | A1:A5 |
16 | エラー値(Error) | #N/A |
64 | 数値配列(Variant()) | {1,2,3,4,5} |
省略時 | 文字列(String) | あいうえお |
InputBox関数/InputBoxメソッドの使用例
VBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
Sub Sample_InputBox() Dim FStr As String Dim MStr As Variant 'インプットボックス関数 FStr = InputBox( _ Prompt:="値を入力してください!!", _ Title:="インプット関数例", _ Default:="ここに入力" _ ) 'インプットボックスメソッド Set MStr = Application.InputBox( _ Prompt:="セル範囲を指定してください", _ Title:="インプットメソッド例", _ Type:=8 _ ) End Sub |
InputBoxマクロ実行例
関連記事
-
-
文字列:指定した文字コードに対応する文字を返す(Chr 関数)
Chr 関数の使い方 【書式】 result = Chr ( code ) 引数 …
-
-
データ型を調べて、そのデータ型を示す数値を返す(VarType 関数)
VarType 関数 の使い方 VarType 関数は、引数に、データ型を調べた …
-
-
変数が配列かどうかをチェックする( IsArray 関数 )
IsArray 関数の使い方 【書式】 result = IsArray( va …
-
-
日付時刻:文字列から日付・時刻データを取得( DateValue 関数、TimeValue 関数 )
DateValue 関数(文字列から日付データを取得) 【書式】 date_va …
-
-
カレントフォルダの取得・設定(DefaultFilePath プロパティ)
DefaultFilePath プロパティ カレントフォルダとは、ブックを開いた …
-
-
テキストファイル(UTF-8)を読み込み、書き出し(ADODB.Stream)
Stream オブジェクト ADO(ActiveX Database Objec …
-
-
Split 関数(文字列型の一次配列を作成)
Split 関数の使い方 【書式】 myArray = Split ( expr …
-
-
乱数ジェネレータを初期化 (乱数系列を再設定) する(Randomize ステートメント)
Randomize ステートメントの使い方 Rnd 関数 を使用する前に使用しま …
-
-
文字列:文字列を指定した形式に変換する(StrConv 関数)
StrConv 関数の使い方 【書式】 result = StrConv ( s …
-
-
オブジェクトの書式をクリアする(ClearFormats メソッド)
ClearFormats メソッド 対象となるオブジェクトの書式(スタイル)を初 …