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

时间:2019-01-14 14:36:23

标签: excel vba

我同时加载了许多具有相同用户窗体的实例。

每个按钮都有一个按钮。

我需要做的是获取单击它的按钮的用户窗体的索引。

到目前为止,这是我的方法,但是在引用行号时出现错误。 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

请帮助我。谢谢。

1 个答案:

答案 0 :(得分:2)

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

If objUserForm Is objTargetUserForm Then
    Exit For
End If

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