我同时加载了许多具有相同用户窗体的实例。
每个按钮都有一个按钮。
我需要做的是获取单击它的按钮的用户窗体的索引。
到目前为止,这是我的方法,但是在引用行号时出现错误。 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
请帮助我。谢谢。
答案 0 :(得分:2)
要比较对象,您需要使用Is
而不是=
:
If objUserForm Is objTargetUserForm Then
Exit For
End If
(您可能已经习惯使用特殊的对象Nothing
,例如If objUserForm Is Nothing Then
等)