我只是想把规则直接放在我脑海里......
例如,使用METHOD(添加)我可以这样做:
Worksheets.Add After:=Worksheets(1)
...但是以下使用Property(Resize)会抛出错误:
Selection.Resize.Select ColumnSize:=4
考虑到这一点,这不是什么大问题:
Selection.Resize(ColumnSize:=4).Select
...或者其他几种方法可行,但我只是试图让我的头脑,如果有一个官方规则,声明你可以做一个参数的后放置(说快!)使用方法,但不能使用属性。
(我也很困惑为什么Resize是一个属性而不是一个方法,所以如果有人知道答案那将是一个奖励,但我想它并不重要)。
提前致谢。
答案 0 :(得分:4)
当您编写Selection.Resize.Select ColumnSize:=4
时,这是不合逻辑的,因为resize
属性没有任何名为Select
和Select
的成员(如果它存在)不接受参数名为ColumnSize
。
为什么Selection.Resize(ColumnSize:=4).Select
有效是因为你基本上写了
Dim TempRange as Range
set TempRange = Selection.Resize(ColumnSize:=4)
TempRange.Select
Set TempRange = Nothing
但这一切都在一条线上。
与此相关的是由Eric Lippert撰写的关于VBA parantheses gotcha's的awesome article