MoveStart Method
Moves the start position of the specified range or selection. This method returns an integer that indicates the number of units by which the start position or the range or selection actually moved, or it returns 0 (zero) if the move was unsuccessful.
expression.MoveStart(Unit, Count)
expression Required. An expression that returns a Range or Selection object.
Unit Optional WdUnits. The unit by which start position of the specified range or selection is to be moved.
Can be one of the following WdUnits constants.
wdCharacter
wdWord
wdSentence
wdParagraph
wdSection
wdStory
wdCell
wdColumn
wdRow
wdTable
If expression returns a Selection object, you can also use wdLine. The default value is wdCharacter.
Count Optional Variant. The maximum number of units by which the specified range or selection is to be moved. If Count is a positive number, the start position of the range or selection is moved forward in the document. If it's a negative number, the start position is moved backward. If the start position is moved forward to a position beyond the end position, the range or selection is collapsed and both the start and end positions are moved together. The default value is 1.
Example
This example moves the start position of the selection one character forward (the selection size is reduced by one character). Note that a space is considered a character.
Selection.MoveStart Unit:=wdCharacter, Count:=1
This example moves the start position of the selection to the beginning of the line (the selection is extended to the start of the line).
Selection.MoveStart Unit:=wdLine, Count:=-1
This example sets myRange
to be equal to the second word in the active document. The example uses the MoveStart method to move the start position of myRange
(a Range object) backward one word. After this macro is run, the first and second words in the document are selected.
If ActiveDocument.Words.Count >= 2 Then
Set myRange = ActiveDocument.Words(2)
With myRange
.MoveStart Unit:=wdWord, Count:=-1
.Select
End With
End If