OfficeType

VBA~ユーザーフォームのタブストリップのタブを切り替えたときの処理を設定しよう~Excel

ユーザーフォームのタブストリップのタブを切り替えたときの処理の設定

下の画像においてタブストリップをダブルクリックすると下のコードが表示されます。

Private Sub TabStrip1_Change()

End Sub

ここに処理内容を書き込めばタブを切り替えたときの処理を設定できます。今回は下のコードでTab1を選択した時にLabel1に月と表示し、Tab2を選択した時にLabel1に火と表示するように設定します。各タブにはインデックス番号が割り振られていて左から0,1,2・・・となります。インデックス番号は[オブジェクト名.Value = インデックス番号]で取得できるのでIf文で各インデックス番号の時の処理を分岐しています。

Private Sub TabStrip1_Change()

If TabStrip1.Value = 0 Then

Label1.Caption = "月"

ElseIf TabStrip1.Value = 1 Then

Label1.Caption = "火"

End If

End Sub

VBAで下のコードを実行すると作成したユーザーフォームが表示されTab1を選択した時にLabel1に月と表示し、Tab2を選択した時にLabel1に火と表示されます。

Sub test1()

Load UserForm1
UserForm1.Label1.Caption = "月"
UserForm1.Show

End Sub

image-01

image-02