Selection Object
The Selection object represents the current selection in a window or pane.
The current selection is either the area that is currently highlighted or if nothing is highlighted then it represents the insertion point.
There can only be one Selection object per window (or pane) and there is only ever one selection that is currently active.
Creating a Selection Object
You can use the Pane object from the active Window object to return the current selection at any time.
The Selection object can only be returned from either an Application, Pane and Window object.
Dim objSelection As Selection
Set objSelection = Application.ActiveWindow.ActivePane.Selection
Set objSelection = Application.ActiveWindow.Selection
Set objSelection = Application.Selection
Set objSelection = ActiveWindow.Selection
Set objSelection = ActiveWindow.Panes(1).Selection
Set objSelection = ActivePane.Selection
Set objSelection = Selection
Set objSelection = ActiveDocument.ActiveWindow.Selection
Important Differences
The Range and Selection objects refer to a continuous area within a document.
The Range and Selection objects are very similar but have some important differences:
1) There can only be one Selection object per window (or pane), but there can be many range objects
2) The active selection is always highlighted, whereas the range object is not visible unless selected.
The Selection object shares a lot of the same properties and methods as the Range object.
Redefining a Selection Object
You can use the SetRange method to redefine an existing Selection object
The following example defines a selection object to the be equal to the current selection and then redefines it to refer to the current selection plus the next 10 characters.
Dim objSelection As Selection
Set objSelection = ActiveWindow.Selection
objSelection.SetRange(Start:=objRange.Start, _
End:=objRange.End+10)
Using the Selection Object
You should always check the Type of the Selection object to make sure that it is sensible.
It is possible for the user to select a vertical block of text that does not have to be represent contiguous text. This can be done by holding down the alt key and dragging with the mouse.
If (Selection.Type <> wdSelectionType.wdSelectionNormal) Then
Call MsgBox("This is not a valid selection")
End If
Default Property (Text)
The Text property is the default property for a Selection object.
ActiveWindow.Selection.Text
ActiveWindow.Selection
Identifying a Selection Object
You can use the Type property to help return information about the current selection
ActiveWindow.Selection.Type = wdSelectionType.wdSelectionNormal
You can use the Flags property to
You can use the Information property to
Selection Object - Properties
BookmarkID | Returns the number of the bookmark that encloses the beginning of the specified selection or range; returns 0 (zero) if there's no corresponding bookmark. (Long) |
Bookmarks | Returns a Bookmarks collection that represents all the bookmarks in the range Read-only. |
Borders | Returns a Borders collection that represents all the borders for the specified object. |
Case | Returns or sets a WdCharacterCase constant that represents the case of the text in the range. |
Characters | Returns a Characters collection that represents the characters in the range. |
CombinedCharacters | Returns True or False indicating if the range contains combined characters. |
Comments | Returns a Comments collection that represents all the comments in the range. |
Document | Returns a Document object associated with the specified pane, window, or selection. |
Duplicate | Returns a duplicate range object representing all the properties from this range. |
Editors | Returns an Editors object that represents all the users authorized to modify this range. |
End | Returns or sets the ending character position of the range. Read Only (Long) |
EndnoteOptions | Returns an EndnoteOptions object that represents the endnotes in the range. |
EndNotes | Returns an Endnotes collection that represents all the endnotes in the range. Read-only. |
ExtendMode | |
Fields | Returns Fields collection that represents all the fields in the range. Read Only |
Find | Returns a Find object that contains the criteria for a find operation. Read-only |
FitTextWidth | Returns or sets the width (in the current measurement units) in which Microsoft Word fits the text in the current range. (Single). |
Flags | |
Font | Returns or sets a Font object that represents the character formatting of the range. |
FootnoteOptions | Returns FootnoteOptions object that represents the footnotes in the range. |
Footnotes | Returns a Footnotes collection that represents all the footnotes in the range. Read-only. |
FormattedText | Returns or sets a Range object that includes the formatted text in the range. |
FormFields | Returns a FormFields collection that represents all the form fields in the range. Read-only. |
Frames | Returns a Frames collection that represents all the frames in the range. Read-only |
GrammarChecked | Returns True or False indicating if a grammar check has been run on the range. False is returned if some of the specified range or document hasn't been checked for grammar. |
GrammaticalErrors | Returns a ProofreadingErrors collection that represents the sentences that failed the grammar check on the range. There can be more than one error per sentence. Read-only. |
HasChildShapeRange | |
HeaderFooter | |
HighlightColorIndex | Returns or sets the highlight color for the range. (WdColorIndex). |
HorizontalInVertical | Returns or sets the formatting for horizontal text set within vertical text. (wdHorizontalInVerticalType). |
HTMLDivisions | Returns an HTMLDivisions object that represents an HTML division in a Web document. |
Hyperlinks | Returns a Hyperlinks collection that represents all the hyperlinks in the range. Read-only. |
ID | Can be used to define hyperlinks in a document ?? |
Information | Returns information about the specified selection or range. Read-only Variant. |
InlineShapes | Returns an InlineShapes collection that represents all the InlineShape objects in the range. Read-only. |
IsEndOfRowMark | Returns True or False indicating if the range is collapsed and is located at the end-of-row mark in a table. Read-only. |
LanguageID | Returns or sets the language for the range. |
ListFormat | Returns a ListFormat object that represents all the list formatting characteristics of the range. Read-only. |
ListParagraphs | Returns a ListParagraphs collection that represents all the numbered paragraphs in the range. Read-only. |
NextStroyRange | Returns a Range object that refers to the next story, as shown in the following table. Parameter is from wdStoryType |
NoProofing | True if the spelling and grammar checker ignores the specified text. Returns wdUndefined if the NoProofing property is set to True for only some of the specified text. (Long) |
Orientation | Returns or sets the orientation of text in a range when the Text Direction feature is enabled. WdTextOrientation. |
PageSetup | Returns a PageSetup object that's associated with the specified range. Read-only. |
ParagraphFormat | Returns or sets a ParagraphFormat object that represents the paragraph settings for the range |
Paragraphs | Returns a Paragraphs collection that represents all the paragraphs in the range. Read-only. |
PreviousBookmarkID | Returns the number of the last bookmark that starts before or at the same place as the specified selection or range; returns 0 (zero) if there's no corresponding bookmark. Read-only Long. |
Range | |
ReadabilityStatistics | Returns a ReadabilityStatistics collection that represents the readability statistics for the range. Read-only. |
Revisions | Returns a Revisions collection that represents the tracked changes in the range. Read-only. |
Scripts | Returns a Scripts collection that represents the collection of HTML scripts in the specified object. |
Sections | Returns a Sections collection that represents the sections in the range. Read-only. |
Sentences | Returns a Sentences collection that represents all the sentences in the range. Read-only. |
Shading | Returns a Shading object that refers to the shading formatting for the specified object. |
ShapeRange | Returns a ShapeRange collection that represents all the Shape objects in the specified range or selection. The shape range can contain drawings, shapes, pictures, OLE objects, ActiveX controls, text objects, and callouts. Read-only. |
ShowAll | True if all nonprinting characters (such as hidden text, tab marks, space marks, and paragraph marks) are displayed. Read/write Boolean. |
SmartTags | Returns a SmartTags object that represents a smart tag in a document |
SpellingChecked | True if spelling has been checked throughout the specified range or document. False if all or some of the range or document hasn't been checked for spelling. Boolean |
SpellingErrors | Returns a ProofreadingErrors collection that represents the words identified as spelling errors in the specified document or range. Read-only. |
Start | Returns or sets the starting character position of a selection, range, or bookmark. Long. |
StartIsActive | |
StoryLength | Returns the number of characters in the story that contains the specified range or selection. Read-only (Long) |
StoryType | Returns the story type for the specified range, selection, or bookmark. Read-only WdStoryType. |
Style | Returns or sets the style for the specified object. To set this property, specify the local name of the style, an integer, a WdBuiltinStyle constant, or an object that represents the style. For a list of valid constants, consult the Microsoft Visual Basic Object Browser. Read/write Variant. |
Subdocuments | Returns a Subdocuments collection that represents all the subdocuments in the specified range or document. Read-only. |
SynonymInfo | Returns a SynonymInfo object that contains information from the thesaurus on synonyms, antonyms, or related words and expressions for the specified word or phrase |
Text | Returns or sets the text in the range. (String). |
TextRetrievalMode | Returns a TextRetrievalMode object that controls how text is retrieved from the specified Range. Read/write. |
TwoLinesInOne | Returns or sets whether Microsoft Word sets two lines of text in one and specifies the characters that enclose the text, if any. Read/write WdTwoLinesInOneType. |
Type | |
Words | Returns a Words collection that represents all the words in a range, selection, or document. Read-only. Note Punctuation and paragraph marks in a document are included in the Words collection. |
XML | Returns a String that represents the XML text in the specified object. |
XMLNodes | Returns an XMLNodes collection that represents the collection of all XML elements within a document or in a selection or range - including those elements that are only partially within the selection or range. |
XMLParentNode | Returns an XMLNode object that represents the parent node of a range. |
Selection Object - Methods
BoldRun | Returns True, False or wdUndefined (a mixture of True and False). Can be set to True, False, or wdToggle. |
ItalicRun | Returns True or False or wdUndefined indicating if the range is formatted in italic. (Long) |
Move | |
MoveDown | |
MoveEnd | |
MoveEndUntil | |
MoveEndWhile | |
MoveLeft | |
MoveRight | |
MoveStart | |
MoveStartUntil | |
MoveStartWhile | |
MoveUntil | |
MoveUp | |
MoveWhile | |
Next | |
Previous | |
UnderlineRun | Returns or sets the type of underline applied to the font or range. Read/write WdUnderline |
© 2024 Better Solutions Limited. All Rights Reserved. © 2024 Better Solutions Limited TopPrevNext