Range Method
Applies To
Document object, Shapes collection object.
Description
Document object: Returns a Range object by using the specified starting and ending character positions.
Shapes object: Returns a ShapeRange object that represents a subset of shapes in the Shapes collection.
Syntax 1
expression.Range(Start, End)
Syntax 2
expression.Range(Index)
expression Required. An expression that returns a Document object (Syntax 1) or a Shapes object (Syntax 2).
Start Optional Long. The starting character position.
End Optional Long. The ending character position.
Index Required Variant. Specifies which shapes are to be included in the specified range. Can be an integer that specifies the index number of a shape within the Shapes collection, a string that specifies the name of a shape, or a Variant array that contains integers or strings.
Remarks
Character position values begin with 0 (zero) at the beginning of the document. All characters are counted, including nonprinting characters. Hidden characters are counted even if they're not displayed. If you don't specify starting and ending character positions for the Range method, the entire document is returned as a Range object.
ShapeRange objects don't include InlineShape objects. An InlineShape object is equivalent to a character and is positioned as a character within a range of text. Shape objects are anchored to a range of text (the selection, by default), but they can be positioned anywhere on the page. A Shape object will always appear on the same page as the range it's anchored to.
Most operations that you can do with a Shape object you can also do with a ShapeRange object that contains a single shape. Some operations, when performed on a ShapeRange object that contains multiple shapes, produce an error.
See Also
End property, Range property, SetRange method, ShapeRange collection object, Start property.
Example
This example applies bold formatting to the first 10 characters in the active document.
ActiveDocument.Range(Start:=0, End:=10).Bold = True
This example creates a range that starts at the beginning of the active document and ends at the end of the selection.
Set myRange = ActiveDocument.Range(Start:=0, End:=Selection.End)
This example creates sets the variable myRange to paragraphs three through six in the active document, and then it right aligns the paragraphs in the range.
Set aDoc = ActiveDocument
If aDoc.Paragraphs.Count >= 6 Then
Set myRange = aDoc.Range(aDoc.Paragraphs(3).Range.Start, _
aDoc.Paragraphs(6).Range.End)
myRange.Paragraphs.Alignment = wdAlignParagraphRight
End If
This example sets the fill foreground color to purple for the first shape in the active document.
ActiveDocument.Shapes.Range(1).Fill.ForeColor.RGB = RGB(255, 0, 255)
This example applies a shadow to the shape named "myshape" in the active document.
ActiveDocument.Shapes.Range("myshape").Shadow.Type = msoShadow6
This example selects shapes one and three in the active document.
ActiveDocument.Shapes.Range(Array(1, 3)).Select