インプットボックスを表示する(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マクロ実行例
関連記事
-
-
文字列:文字列の指定した位置から指定文字数取得(Mid 関数,MidB 関数)
Mid 関数・MidB 関数 の使い方 【書式】 result_mid = Mi …
-
-
Split 関数(文字列型の一次配列を作成)
Split 関数の使い方 【書式】 myArray = Split ( expr …
-
-
引数が省略されたかどうかをチェックする( IsMissing 関数 )
IsMissing 関数の使い方 【書式】 result = IsMissing …
-
-
配列の要素数を取得する(UBound 関数・LBound 関数)
UBound 関数・LBound 関数 【書式】 result = UBound …
-
-
取り消し線を設定する(Strikethrough プロパティ)
取り消し線を設定する(Strikethrough プロパティ) Striketh …
-
-
乱数を生成する(Rnd 関数)
Rnd 関数の使い方 Rnd 関数は、0 以上、1 未満の範囲の乱数を単精度浮動 …
-
-
Array 関数(バリアント型の配列を作成)
Array 関数の使い方 【書式】 myArray = Array ( elem …
-
-
エラー(CVErr 関数・IsError 関数・Error 関数)
CVErr 関数(エラー番号をエラー値に変換する)の使い方 【書式】 retur …
-
-
VBA の演算子(文字連結演算子:& 演算子 + 演算子)
文字連結演算子 文字連結演算子は、文字列の連結を行うときに使用する演算子で、「& …
-
-
上付き文字・下付き文字(Superscript,Subscript)
上付き文字(Superscript プロパティ) Superscript プロパ …

