【问题标题】:Open a VBA Multi Tab Form in Excel to a specific tab在 Excel 中打开 VBA 多选项卡表单到特定选项卡
【发布时间】:2015-12-23 14:22:42
【问题描述】:

我相信对于任何具有 VBA 知识(我没有)的人来说,这将是一个非常简单的答案。我有一个在 VBA 中为 Excel 构建的表单。这是一个多选项卡表单,当在 Excel 中单击“打开表单 X”按钮时,我希望在第一个选项卡上始终打开表单。我们将表单称为“Form1”和选项卡“IDTab”

我尝试了以下代码,但都没有成功:

Private Sub GetFormButton_Click() 
    Form1.Show With MultiPage1 Value = 0 
End Sub

Private Sub BackToExclu_Click() 

 With MultiPage1 
    .Value = (.Value - 1) Mod (.Pages.Count) 
 End With 

End Sub 

【问题讨论】:

  • 首先,欢迎来到 SO。其次,请向我们展示您自己完成这项工作的编码工作。这不是一个“代码编写”服务,而是一个论坛,可以为现有的无效代码提供解决方案。有关详细信息,请参阅How to Ask。第三,您是否尝试过在 google 上搜索解决方案?
  • 我已经尝试了Private Sub GetFormButton_Click() Form1.Show With MultiPage1 Value = 0Private Sub BackToExclu_Click() With MultiPage1 .Value = (.Value - 1) Mod (.Pages.Count) End With End Sub,但似乎都没有工作。我尝试过谷歌搜索,但我不确定我所问的是否正确,而且我得到的很多结果都与 Access 2003 有关,不知道 VBA 在两个模块(以及语言)中的工作方式是否相同& 语法似乎有点不同)
  • 谢谢。我将您的代码放在原始问题中。

标签: forms vba excel multipage


【解决方案1】:

其实你们很亲近:)

如果您将代码放入用户表单本身内的Initiliaze Event,则在加载表单时,它将始终显示多页控件的第一页。

Private Sub UserForm_Initialize()

     Me.MultiPage1.Value = 0

End Sub

要将此代码放入用户窗体模块,请右键单击 VBE 中的 UserForm 对象,然后单击 View Code

那么你的按钮点击代码就是:

Private Sub GetFormButton_Click() 
    Form1.Show 
End Sub

【讨论】:

    【解决方案2】:

    打开你

    1. 打开您的 Excel 工作簿
    2. 找到您的表格
    3. 右键单击表单名称
    4. 选择“显示程序代码”

    在表单的程序代码中输入以下代码:

    Private Sub UserForm_Activate()
      MultiPage1.Pages("IDTab").Enabled = True
    End Sub
    

    请注意:MultiPage1 在您的表单中的调用方式可能不同。 MultiPage1 是在我的 excel 工作簿中保存标签页的容器的默认名称。在属性窗口中,您可以找到该容器的实际名称。

    【讨论】:

    • 谢谢大家。看起来到目前为止,它正在工作。我将保存并重新打开几次以确保它正常运行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多