在UserForm_Activate()代码中,我想调用一个函数(该函数尚未创建)来设置用户表单的滚动属性。请参阅下面的代码。
Private Sub UserForm_Activate()
MakeFormResizable
End Sub
在Modules4工作表上,我有以下代码:
Public Sub MakeFormResizable()
Me.ScrollHeight = .Height
Me.ScrollWidth = .Width
End Sub
当我运行我粘贴的代码时,我得到错误“编译错误:无效或不合格的引用”。
发布于 2019-05-15 03:07:58
因为Me
是本地…,所以它不起作用。
您可能希望将Userform对象传递给Public sub,如下所示:
Public Sub MakeFormResizable(ByRef aUserform As MSForms.UserForm)
With aUserform
'Do your stuff
End With
End Sub
发布于 2019-05-15 03:06:06
明白了!
Private Sub UserForm_Activate()
Dim MyObject
Set MyObject = Me
MakeFormResizable MyObject
End Sub
Public Sub MakeFormResizable(MyObject)
With MyObject
.ScrollHeight = .Height
End If
End With
End Sub
https://stackoverflow.com/questions/56136747
复制相似问题