社区,我目前正在隐藏我的用户表单多页上的标签,但当前标签除外。用户可以单击按钮在页面之间来回切换。一些按钮共享子例程。当用户单击按钮时,一旦选择了新选项卡,它就会隐藏上一个选项卡。我想这是一个双重问题。
1)如何获取上一个标签选择值?
2)如何循环显示标签值?我的目标是针对所有其他标签测试当前标签标题或值。想想这将是一种隐藏它们的简单方法,无论哪个页面和哪个按钮调用子例程。
现在我只有一个标签按钮...
Sub NewCreditSetup()
MultiPage1.Pages(1).Visible = True
MultiPage1.Value = 1
MultiPage1.Pages(0).Visible = False
//More code displaying tab...irrelevant
End Sub
答案 0 :(得分:3)
您可以使用选项卡更改事件来确定选项卡的更改时间,并将当前选项卡index
存储为变量。然后,再次更改选项卡时,此变量中的选项卡将成为上一个选项卡。
即:
Private iPrevTab As Integer
Private iCurTab As Integer
Private Sub MultiPage1_Change()
iPrevTab = iCurTab
iCurTab = MultiPage1.Index
'You can also check here what that tab is to do something with it
If MultiPage1.Value = MultiPage1.Pages("mySpecialPage").Index Then
'Go Nuts
End If
End Sub
然后,您可以遍历所有选项卡并检查其名称,标题或索引。例如:
Private Sub LoopTabs()
Dim ii as Integer
for ii = 1 to MultiPage1.Pages.Count
If MultiPage1.Pages(ii).Index = iPrevTab Then
Debug.Print MultiPage1.Pages(ii).Name & " " & MultiPage1.Pages(ii).Caption
End If
Next ii
End Sub
可能还值得注意的是要小心显示和隐藏标签,因为它不常见并且可能会使用户感到困惑。我会把它留给你。
答案 1 :(得分:0)
我认为这会对您有所帮助。
Dim m As String
m = MultiPage1.SelectedItem.Caption
MsgBox m