インプットボックスを表示する(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マクロ実行例
関連記事
-
-
日付時刻:数値から日付・時刻データを取得( DateSerial 関数、TimeSerial 関数 )
DateSerial 関数(数値を使って日付データを取得) 【書式】 date …
-
-
文字列:定数(改行・タブ)
改行・タブの定数 これらの定数は、使用前に定義する必要はありません。コード中のど …
-
-
ある数値が、複数の範囲のどの範囲に含まれるかを示す文字列を返す(Partition 関数)
Partition 関数 の使い方 Partition 関数は、ある数値が、区切 …
-
-
文字列:文字列の長さを取得( Len 関数、LenB 関数 )
Len 関数(文字列の長さを取得) 【書式】 result_len = Len …
-
-
文字列:文字列変数内の一部を置き換える(Mid・MidB ステートメント)
Mid・MidB ステートメントの使い方 【書式】 { Mid | MidB } …
-
-
変数が日付型かどうかをチェックする( IsDate 関数 )
IsDate 関数の使い方 【書式】 result = IsDate( expr …
-
-
Math 関数( Abs,Atn,Cos,Exp,Log,Rnd,Sgn,Sin,Sqr,Tan )
Abs 関数 【書式】 value = Abs ( number ) 【引数・戻 …
-
-
式を評価し、結果(真・偽)に応じた式・値を返す(IIf 関数)
IIf 関数 の使い方 IIf(アイイフ)関数は、式を評価してその結果(真・偽) …
-
-
配列の要素数を取得する(UBound 関数・LBound 関数)
UBound 関数・LBound 関数 【書式】 result = UBound …
-
-
指定した数値を文字列に変換する(Str 関数)
Str 関数 の使い方 Str 関数は、数値・数式を文字列に変換して返す関数です …