構文
構文は以下の通りです。
解説
タブオーダーを設定するには、SetDefaultTabOrderメソッドを使用します。このメソッドは、UserFormオブジェクトで提供されており、UserForm内のコントロールのタブオーダーをデフォルトの順序で設定する際に使用されます。
●UserForm:タブオーダーを設定したいユーザーフォームのオブジェクト名を指定します。例えば、フォームの名前が"MyForm"の場合、"MyForm.SetDefaultTabOrder"となります。
●SetDefaultTabOrder:ユーザーフォーム内のコントロールのタブオーダーをデフォルトの順序で設定するためのメソッドです。
使い方
具体的な使い方について紹介します。
Me.SetDefaultTabOrder
End Sub
このコードは、ユーザーフォームがアクティブになるたびにSetDefaultTabOrderメソッドを呼び出すことを意味しています。これにより、コントロールの追加順に基づいたデフォルトのタブオーダーが設定されます。
プログラミング例
以下に、プログラミング例を幾つか紹介します。
例1:カスタムなタブオーダー
Me.TabOrder = Array(TextBox1, Button1, CheckBox1, TextBox2)
Me.SetTabOrder Me.TabOrder
End Sub
この例では、ユーザーフォーム内のコントロールの順序を配列に指定し、それを使用してタブオーダーを設定しています。ここでは、TextBox1、Button1、CheckBox1、TextBox2の順番でタブキーを押すとフォーカスが移動します。
例2:グループ化してタブオーダーを設定
Dim Group1 As Variant, Group2 As Variant
Group1 = Array(TextBox1, Button1)
Group2 = Array(CheckBox1, TextBox2)
Me.TabOrder = Array(Group1, Group2)
Me.SetTabOrder Me.TabOrder
End Sub
この例では、TextBox1とButton1が一つのグループに、CheckBox1とTextBox2が別のグループになります。フォーム内でグループごとにタブキーを押すと、グループ内のコントロール間でフォーカスが移動します。
まとめ
フォーム内コントロールのタブオーダーを設定するには、SetDefaultTabOrderメソッドを使用します。コントロールの追加順に基づいたデフォルトのタブオーダーが簡単に設定できますので、是非活用してください。