Vba 如何在函数内设置userform的属性
在UserForm_Activate()代码中,我想调用一个函数(尚未创建)来设置UserForm的滚动属性。请参阅下面的代码Vba 如何在函数内设置userform的属性,vba,Vba,在UserForm_Activate()代码中,我想调用一个函数(尚未创建)来设置UserForm的滚动属性。请参阅下面的代码 Private Sub UserForm_Activate() MakeFormResizable End Sub 在模块4表中,我有以下代码: Public Sub MakeFormResizable() Me.ScrollHeight = .Height Me.ScrollWidth = .Width End Sub 当我运行粘贴的代码时,我得
Private Sub UserForm_Activate()
MakeFormResizable
End Sub
在模块4表中,我有以下代码:
Public Sub MakeFormResizable()
Me.ScrollHeight = .Height
Me.ScrollWidth = .Width
End Sub
当我运行粘贴的代码时,我得到了错误“编译错误:无效或不合格引用”。得到了
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
因为
Me
是本地的,所以它不起作用
也许您希望将Userform对象传递给公共子对象,如下所示:
Public Sub MakeFormResizable(ByRef aUserform As MSForms.UserForm)
With aUserform
'Do your stuff
End With
End Sub