' in userform's code module
Dim PreviousTabStripValue As Long
Private Sub TabStrip1_Change()
Rem save option button values for last tab
With TabStrip1.Tabs(PreviousTabStripValue)
.Tag = OptionButton1.Value
.Tag = .Tag & "," & OptionButton2.Value
.Tag = .Tag & "," & OptionButton3.Value
.Tag = .Tag & "," & OptionButton4.Value
Me.Caption = .Tag
End With
Rem change option button captions
OptionButton1.Caption = Split(OptionButton1.Tag, ",")(TabStrip1.Value)
OptionButton2.Caption = Split(OptionButton2.Tag, ",")(TabStrip1.Value)
OptionButton3.Caption = Split(OptionButton3.Tag, ",")(TabStrip1.Value)
OptionButton4.Caption = Split(OptionButton4.Tag, ",")(TabStrip1.Value)
Rem restore option button values for new tab
With TabStrip1.SelectedItem
OptionButton1.Value = (Split(.Tag & ",,,,", ",")(0) = "True")
OptionButton2.Value = (Split(.Tag & ",,,,", ",")(1) = "True")
OptionButton3.Value = (Split(.Tag & ",,,,", ",")(2) = "True")
OptionButton4.Value = (Split(.Tag & ",,,,", ",")(3) = "True")
End With
PreviousTabStripValue = TabStrip1.Value
End Sub
Private Sub UserForm_Initialize()
Dim i As Long
Do Until TabStrip1.Tabs.Count >= 3
TabStrip1.Tabs.Add
Loop
Rem static captions for tabstrip tabs
With TabStrip1
.Tabs(0).Caption = "A options"
.Tabs(1).Caption = "B options"
.Tabs(2).Caption = "C options"
End With
Rem captions for option buttons to change as tabstrip is changed
OptionButton1.Tag = "option A-1,option B-1,option C-1"
OptionButton2.Tag = "option A-2,option B-2,option C-2"
OptionButton3.Tag = "option A-3,option B-3,option C-3"
OptionButton4.Tag = "option A-4,option B-4,option C-4"
Rem itnitalize
For i = 0 To TabStrip1.Tabs.Count - 1
TabStrip1.Value = i
Next i
TabStrip1.Value = 0
End Sub