特定加载的用户表单的索引



我同时加载了同一用户表单的许多实例。

他们每个人都有一个按钮。

我需要做的是获取我单击其按钮的用户表单的索引。

这是我到目前为止的方法,但我在提到第 6 行时出现错误

Public Function UserFormInstance(ByVal objTargetUserForm As Object) As Long
    Dim strUserFormName As String
    For Each objUserForm In VBA.UserForms
        strUserFormName = objTargetUserForm.Name
        If objUserForm.Name = strUserFormName Then
            UserFormInstance = UserFormInstance + 1
            If objUserForm = objTargetUserForm Then '==> Here is the problem
                Exit For
            End If
        End If
    Next objUserForm
    Set objUserForm = Nothing
End Function
Private Sub CommandButton1_Click()
    Dim xxx As Long
    xxx = UserFormInstance Me
    MsgBox xxx
End Sub

我需要你的帮助。谢谢。

要比较对象,您需要使用 Is 而不是 =

If objUserForm Is objTargetUserForm Then
    Exit For
End If

(您可能已经习惯于使用特殊的对象Nothing执行此操作,例如 If objUserForm Is Nothing Then等)

最新更新