excel vbaの「inputbox」を簡単に説明しました。
excelのvbaをマスターしましょう!
excel vba 簡単・解決! Homeへ
inputbox
excelのvbaでプログラムへの対話的入力は、inputbox命令です。
重要: inputboxに戻り値を持たせる場合、 InputBox(" 入力してください ")のように( )が必要です。
戻り値は、バリアント型のデータです。
また、キャンセルをクリックした場合のように入力が無く、戻り値がないとき、空の文字列(””)が返されます。
1.構文
InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])
※ [ ]で囲まれた引数は、省略できます。
2.InputBoxの引数
(1)prompt :メッセージのテキスト(文字列)です。
複数行を指定する場合は、キャリッジ リターン (Chr(13))、ライン フィード (Chr(10))を挿入します。
またはキャリッジ リターンとライン フィードの組み合わせ (Chr(13) & Chr(10)) を改行する位置に挿入します。
(2)title :ダイアログのタイトルを指定できます。
(3)default :ユーザが何も入力しない場合、規定値としてvbaが自動的に設定して表示する文字列です。
(4)xpos :画面の左端からダイアログ ボックスの左端までの水平方向の距離を、twip 単位で示す数式を指定します。
省略すると、水平方向に対して画面の中央に配置されます。
※ Twip(s)(トゥイップ)とは、Microsoft Visual Basicでフォーム(ウインドウ)の設計をする際などに用いられる長さの単位です。
1Twipは1/20ポイントであり、1/1440インチに相当します。(Twip wikiより引用)
(5)ypos :画面の上端からダイアログ ボックスの上端までの垂直方向の距離を、twip 単位で示す数式を指定します。
省略すると、ダイアログ ボックスは、垂直方向に対して画面の上端から約 1/3 の位置に配置されます。
(6)helpfile :使用するヘルプ ファイルの名前を示す文字列式を指定します。
(7)context :ヘルプ トピックに指定したコンテキスト番号を表す数式を指定します。
【コラム】 フォームから対話的に入力するには
注意: vbaの実行は、大切なデータを消さないため、Excel Bookを新しく作成し、そのBookで行いましょう!
複数のデータを対話的に入力するには、フォームを利用します。
次の図は、フォームを対話的に入力するための UserForm1 コントロールとツールボックスウィンドウです。

フォームの作成方法
(1) 「Alt+F11」キーを押しVBEを開きます。
(2) 「挿入」−「ユーザーフォーム」メニューを選択し、UserForm1を開きます。
(3) ツールボックスが開いていない場合、「表示」−「ツールボックス」を選択し、ツールボックスダイアログを開きます。
(4) ツールボックスからUserFormへ「テキストボックス」2つ、「コマンドボタン」を1つ配置します。
※ ツールボックスのコントロール上でマウスを移動すると、コントロールの名称がポップアップ表示されます。
(5) UserForm1オブジェクトのメンバーにCommandButton1、TextBox1、TextBox2に加えられます。
※ VBEで「表示」ー「オブジェクト」を選択するとUserForm1オブジェクト一覧の中にこのメンバーを確認できます。
(6) vbaでユーザーフォーム(UserForm)を開く命令は、フォーム名.Showです。
(7) テキストは、フォーム名.テキスト名.Textで取出すことが出来ます。
(8) ワークシートのセル A1,B1に2つのテキストの値を入力するには、vbaで次のようになります。
Range("A1").Value = UserForm1.TextBox1.Text
Range("B1").Value = UserForm1.TextBox2.Text
(9) フォームのコマンドボタンを選択し、それをダブルクリックして開くコードウィンドウに(8)のvbaを記述します。
Private Sub CommandButton1_Click()
Range("A1").Value = UserForm1.TextBox1.Text
Range("B1").Value = UserForm1.TextBox2.Text
End Sub
(10) フォームを開き、テキストへデータを入力し、ボタンを押します。
VBEを開き(VBEウィンドウをアクティブにし)、次のマクロをvbaで記述し、F5を押して実行します。
Sub open_form()
UserForm1.Show
End Sub
excelのvbaをマスターしましょう。
excel vba 簡単・解決! Homeへ
【vbaのメッセージの最新記事】

