Range.StartOf Method (Word)
Moves or extends the start position of the specified range or selection to the beginning of the nearest specified text unit. This method returns a Long that indicates the number of characters by which the range or selection was moved or extended. The method returns a negative number if the movement is backward through the document.
Syntax
expression .StartOf(Unit, Extend)
expression Required. A variable that represents a Range object.
Parameters
Name |
Required/Optional |
Data Type |
Description |
---|---|---|---|
Unit |
Optional |
WdUnits |
The unit by which the start position of the specified range or selection is to be moved. Can be any WdUnits constant except wdLine. The default value is wdWord. |
Extend |
Optional |
WdMovement |
Specifies whether to move or extend the start of the range. If you use wdMove, both ends of the range or selection are moved to the beginning of the specified unit. If you use wdExtend, the beginning of the range or selection is extended to the beginning of the specified unit. The default value is wdMove. |
Remarks
If the beginning of the specified range or selection is already at the beginning of the specified unit, this method doesn't move or extend the range or selection. For example, if the selection is at the beginning of a line, the following example returns 0 (zero) and doesn't change the selection.
char = Selection.StartOf(Unit:=wdLine, Extend:=wdMove)
Example
This example selects the text from the insertion point to the beginning of the line. The number of characters selected is stored in charmoved.
Selection.Collapse Direction:=wdCollapseStart charmoved = Selection.StartOf(Unit:=wdLine, Extend:=wdExtend)
This example moves the selection to the beginning of the paragraph.
Selection.StartOf Unit:=wdParagraph, Extend:=wdMove
This example moves myRange to the beginning of the second sentence in the document (myRange is collapsed and positioned at the beginning of the second sentence). The example uses the Select method to show the location of myRange.
Set myRange = ActiveDocument.Sentences(2)
myRange.StartOf Unit:=wdSentence, Extend:=wdMove
myRange.Select