VBA“With object”语法 - 您可以引用对象本身吗?

Geo*_*ton 5 vba

当我用一个对象做很多不同的事情时,我经常使用 With object 语法。它是调用对象的属性/方法的有用简写,而不必因重用对象的名称而使代码变得混乱。然而有时我想调用一个将对象本身作为参数的函数。在这种情况下有什么方法可以引用该对象吗?

' Class Module
' Class1

' Code Module
Sub f(byref obj as Class1)
End Sub

Sub test()
  Dim obj as Class1: set obj = new Class1
  With obj
    f Me ' Doesn't work - can you refer to obj in this context?
    f obj ' Works but I don't like it when the object has a long name
  End With
End Sub
Run Code Online (Sandbox Code Playgroud)

ror*_*.ap 3

不,那里没有。您只需使用对象本身,就像您在代码中所做的那样。