You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求修改MultiPage跳转代码:最后选项卡时跳转至下一个Userform

实现MultiPage选项卡切换及最后一页跳转至下一个Userform的VBA方案

没问题,我帮你调整这段代码,既能保留原本切换MultiPage选项卡的功能,又能在到达最后一个选项卡时,点击按钮直接跳转到下一个Userform。

修改后的完整代码

Private Sub CommandButton3_Click()
    Dim iNextPage As Long
    
    With Me.MultiPage1
        iNextPage = .Value + 1
        
        ' 判断是否还有下一个选项卡
        If iNextPage < .Pages.Count Then
            .Pages(iNextPage).Visible = True
            .Value = iNextPage
        Else
            ' 到达最后一个选项卡,跳转到下一个Userform
            ' 隐藏当前表单(可选,根据需求调整)
            Me.Hide
            ' 替换成你实际的下一个Userform名称
            NextUserForm.Show
            ' 如果需要彻底关闭当前表单,可以用下面这行(二选一)
            ' Unload Me
        End If
    End With
End Sub

关键改动说明

  • 最后一页判断逻辑:因为MultiPage的选项卡索引从0开始,当iNextPage等于.Pages.Count时,说明已经触达最后一个选项卡的边界,这时候触发表单跳转逻辑。
  • 表单跳转处理:先隐藏当前Userform(用Me.Hide),再显示目标表单,记得把代码里的NextUserForm替换成你实际使用的表单名称。如果不需要保留当前表单在内存中,可以改用Unload Me彻底关闭。
  • 原有功能保留:原选项卡切换逻辑完全保留,只有在到达最后一页时才会触发跨表单跳转。

另外补充:如果你的MultiPage有部分页面默认设置为隐藏,原代码里的.Pages(iNextPage).Visible = True就很有必要;如果所有页面本来都是可见状态,这行代码可以保留也可以删除,不影响核心功能。

内容的提问来源于stack exchange,提问作者DerekW

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:48:42