OfficeType

VBA~ユーザーフォームのテキストボックスにタブ文字を入力できるようにしよう~Excel

ユーザーフォームのテキストボックスでTabキーを押すと初期設定では別のコントロール(コマンドボタンやテキストボックスなど)にフォーカスが移動します。これをテキストボックス内でTabキーを押したときにタブ文字を挿入するように設定したい場合はTabKeyBehaviorプロパティをTrueに設定します。

書き方

オブジェクト名.TabKeyBehavior = True

オブジェクト名はユーザーフォームのオブジェクト名と、テキストボックスのオブジェクト名を指定します。オブジェクト名の確認方法は作成したユーザーフォームファイルをクリックするとユーザーフォームが表示されます。ユーザーフォーム全体を選択するとプロパティウィンドウにオブジェクト名という項目があるので、それがユーザーフォームのオブジェクト名になります。次にテキストボックスを選択すると同じようにテキストボックスのオブジェクト名が確認できます。プロパティウィンドウが表示されていない場合はメニューの表示からプロパティウィンドウをクリックすると表示されます。

UserForm1というユーザーフォームを作成し、TextBox1というテキストボックスを設定した場合、下のコードを実行するとテキストボックス内でTabキーを押すとタブ文字が挿入されます。

Sub test1()

Load UserForm1
UserForm1.TextBox1.TabKeyBehavior = True
UserForm1.Show

End Sub

image-01

image-02

プロパティウィンドウで設定

作成したユーザーフォームのファイルをクリックしプロパティウィンドウの選択欄からテキストボックスを選択します。プロパティウィンドウにTabKeyBehaviorの項目があるのでクリックすると▼マークが表示されるのでTrueを選択してください。プロパティウィンドウが表示されていない場合はメニューの表示からプロパティウィンドウをクリックすると表示されます。

image-03

image-04

image-05

image-06