有多种方法将现有的 Range 对象赋给变量。本主题对两种不同的方法进行了阐述。在下列示例中,将 Range 对象赋给变量 Range1 和 Range2。例如,下列指令将活动文档中的第一个和第二个单词赋给变量 Range1 和 Range2。

Set Range1 = ActiveDocument.Words(1)
Set Range2 = ActiveDocument.Words(2)
将一个 Range 对象变量设置为等于另一个 Range 对象变量
下列指令将名为 Range2 的区域变量设为与 Range1 代表的位置相同。

Set Range2 = Range1
现在两个变量代表同一区域。修改 Range2 的起点、终点或其中的文本将影响 Range1,反之亦然。

请注意,以下指令等价于 Range2.Text = Range1.Text。该指令指定 Range2 的默认属性(Text 属性)为 Range1 的默认属性。但该指令并不修改其实际引用的对象。

Range2 = Range1
Range2 和 Range1 区域具有相同的内容,但它们可能对应文档中的不同位置,甚至对应不同的文档。

使用 Duplicate 属性
下列指令创建一个 Range 对象的新副本 Range2,它与 Range1 有相同的起点、终点和文本。

Set Range2 = Range1.Duplicate
对 Range1 起点或终点的修改不影响 Range2,反之亦然。但是,由于这两个区域指向文档中的同一位置,对一个区域中文本的修改将影响另一个区域中的文本。