VBA Word范围操作似乎不同

时间:2010-09-03 14:03:06

标签: vba word-vba

在使用或设置范围时,某些范围的行为与其他范围不同。例如,

ActiveDocument.Range(10, 20).Select
ActiveDocument.Tables(2).Cell(1, 1).Range(10, 20).Select

第一行如果确定并按预期工作。第二行在Range语句中产生错误,尽管看起来两行应该是相同的。

有什么区别?

1 个答案:

答案 0 :(得分:3)

Range上的{p> Cell是属性,而不是方法 - 它返回单元格所代表的文档的范围。

这意味着您无法添加(10,20)等参数。

以下是等效的:

 Dim rangeStart As Integer
 rangeStart = ActiveDocument.Tables(2).Cell(1, 1).Range.Start
 ActiveDocument.Range(rangeStart + 10, rangeStart + 20).Select