Excel 使用多页执行Userform初始化

Excel 使用多页执行Userform初始化,excel,vba,initialization,userform,multipage,Excel,Vba,Initialization,Userform,Multipage,是否有一种方法可以使用分别属于每个页面的多页面运行userform initialize 我有一个多页的用户表单,每个表单上都有复选框、组合框和文本框,每个表单都有不同的控制源。我没有对每个复选框进行编程,而是使用userform initialize来添加复选框,但是这似乎不适用于多页 我尝试使用if语句来指定要初始化的页面,但这似乎不起作用。有什么建议吗 谢谢 Private Sub UserForm_Initialize() Dim Left As Single, Top As Si

是否有一种方法可以使用分别属于每个页面的多页面运行userform initialize

我有一个多页的用户表单,每个表单上都有复选框、组合框和文本框,每个表单都有不同的控制源。我没有对每个复选框进行编程,而是使用userform initialize来添加复选框,但是这似乎不适用于多页

我尝试使用if语句来指定要初始化的页面,但这似乎不起作用。有什么建议吗

谢谢

Private Sub UserForm_Initialize()

  Dim Left As Single, Top As Single
    Dim cell As Range, row As Range, check As MSForms.CheckBox
     Top = 54
     Left = 29
   'Element Deficiency Matrix (1a to 3k)
    If MultiPage1.Value = 0 Then
       With Worksheets("Pier Data2")
          For Each row In .Range("A122:K124").Rows
             For Each cell In row.Cells
                Set check = Me.Controls.Add("Forms.Checkbox.1")
                With check
                   .ControlSource = "'" & cell.Parent.Name & "'!" & cell.Address(RowAbsolute:=False, ColumnAbsolute:=False)
                   .Left = Left
                   .Top = Top
                   .Width = 12.6
                   .Height = 17.6
                   Left = Left + 12
                End With
            Next
          Left = 29
          Top = Top + 17.6
          Width = Width
        Next
   End With
  End If
End Sub

Set check=Me.MultiPage1.Pages(0.Controls.Add)(“Forms.Checkbox.1”)
Wow,谢谢。这么简单的解决办法!我之前也有过类似的经历,但肯定错过了什么!