VBA: 用户表单多页模板
VBA: userform multipage template
我正在制作一个允许用户同时更改多个图表上的边界的用户表单。我弄清楚了第一个多页上的所有内容应该如何显示,现在我想知道是否有任何方法可以一次添加 11 个页面以使其看起来像第一页。我的用户表单出现在下方。
我还在为此设计阶段。如果在设计中有一种方法可以做到这一点,那就太好了。如果在 Initialize sub 中有一种方法也很好。
根据您的预期用途,您应该使用 TabStrip 而不是 MultiPage,因为其中的大多数控件都是相同的布局(相同控制量)。 MultiPage 用于在每个页面上使用不同的控件对数据进行分类。
考虑这个简单的用户表单来演示在这里使用 TabStrip 的好处:
左边的方块是我没有输入代码的图片夹。
使用下面的代码来处理选项卡更改,当单击不同的选项卡时,用户表单中的某些元素将会更改。
Option Explicit
Private Sub TabStrip1_Change()
Dim TabX As String
With Me.TabStrip1
TabX = .Tabs(.Value).Caption
Debug.Print "ActiveTab:", TabX
End With
Me.Frame1.Caption = "Maximum Bounds (" & TabX & ")"
Me.Frame2.Caption = "Minimum Bounds (" & TabX & ")"
Me.TextBox1.Value = "TextBox2 for " & TabX ' Forgot to change this Value to TextBox1 before the screenshot...
Me.TextBox2.Value = "TextBox2 for " & TabX
End Sub
- 启动用户表单时(未设置
UserForm_Initialize
):
- 点击了 Tab2:
- 点击了 Tab1:
我正在制作一个允许用户同时更改多个图表上的边界的用户表单。我弄清楚了第一个多页上的所有内容应该如何显示,现在我想知道是否有任何方法可以一次添加 11 个页面以使其看起来像第一页。我的用户表单出现在下方。
我还在为此设计阶段。如果在设计中有一种方法可以做到这一点,那就太好了。如果在 Initialize sub 中有一种方法也很好。
根据您的预期用途,您应该使用 TabStrip 而不是 MultiPage,因为其中的大多数控件都是相同的布局(相同控制量)。 MultiPage 用于在每个页面上使用不同的控件对数据进行分类。
考虑这个简单的用户表单来演示在这里使用 TabStrip 的好处:
左边的方块是我没有输入代码的图片夹。
使用下面的代码来处理选项卡更改,当单击不同的选项卡时,用户表单中的某些元素将会更改。
Option Explicit
Private Sub TabStrip1_Change()
Dim TabX As String
With Me.TabStrip1
TabX = .Tabs(.Value).Caption
Debug.Print "ActiveTab:", TabX
End With
Me.Frame1.Caption = "Maximum Bounds (" & TabX & ")"
Me.Frame2.Caption = "Minimum Bounds (" & TabX & ")"
Me.TextBox1.Value = "TextBox2 for " & TabX ' Forgot to change this Value to TextBox1 before the screenshot...
Me.TextBox2.Value = "TextBox2 for " & TabX
End Sub
- 启动用户表单时(未设置
UserForm_Initialize
):
- 点击了 Tab2:
- 点击了 Tab1: