我正在学习vba,这是第一次学习vba。该项目围绕婚礼策划工作表构建。我打算锁定工作表,以便公式和格式不会被用户破坏(我的未婚夫会找到方法)。为此,我正在构建一个userform,它通过多页控件的不同页面上的文本框收集数据。
此示例只有一个页面,但稍后会显示“Apparel”之类的其他页面:
我目前在_Click上有以下代码用于“清除”按钮。
Dim C As Control
For Each C In frmExpenses.Controls
If TypeName(C) = "TextBox" Then
C.Value = ""
End If
Next C
这有效地清除了文本框中的数据。但是,我希望能够仅在多页上清除活动页面上的数据。例如,如果稍后有一个名为“Flowers”的标签,并且它是活动标签,我想将数据保留在“服饰”上并清除“鲜花”中的数据。
我尝试过尽可能彻底。如果您需要澄清某些事情,请告诉我。
答案 0 :(得分:4)
试试这个
对于特定页面(说1)
Dim ctl As Control
For Each ctl In Me.MultiPage1.Pages(1).Controls
If TypeName(ctl) = "TextBox" Then ctl.Value = ""
Next
来自ActivePage
Dim ctl As Control
For Each ctl In Me.MultiPage1.Pages(Me.MultiPage1.Value).Controls
If TypeName(ctl) = "TextBox" Then ctl.Value = ""
Next