Rds*_*ter 8 excel vba excel-vba
我最近遇到过这种情况,如果有更简单的方法可以做到这一点,我只是很好奇......
With Activeworkbook
'Do Stuff
With .Sheets(1)
'More stuff Done
'...
'But now I need to refer to or pass the Sheet in the last With Statement
SomeFunctionAnswer = SomeFunction Activeworkbook.Sheets(1)
End With
'Yet more stuff Done
End With
Run Code Online (Sandbox Code Playgroud)
它是否必须完全写出来,或者是否有某种方式来表示它更容易/更清洁?也许有某种属性或方法可以为这个实例传递自己的东西?如何从更高的位置引用属性或方法?
SomeFunctionAnswer = SomeFunction .Self '???
'OR
SomeFunctionAnswer = SomeFunction .Parent.Name '???
Run Code Online (Sandbox Code Playgroud)
希望有道理......
A.S*_*S.H 11
答案很简单,没有.
该With条款有助于访问其主题的成员和方法,但它没有提供任何参考该主题本身的便利.当需要时,您必须完全写入对象的名称或通过其他方式引用它.
在访问作为外部 With子句主题的对象的方法和成员时,还需要完全命名它.内With,并为整个其范围,完全隐藏了外With.
因此,编写代码的方式是正确的方法.
| 归档时间: |
|
| 查看次数: |
7470 次 |
| 最近记录: |