Table of contents
TOC
Collapse the table of content
Expand the table of content

TextRange Object (Publisher)

office 365 dev account|Last Updated: 6/12/2017
|
1 Contributor

Contains the text that is attached to a shape, in addition to properties and methods for manipulating the text. This topic describes how to:

  • Return the text range in any shape you specify.

  • Return a text range from the selection.

  • Return particular characters, words, lines, sentences, or paragraphs from a text range.

  • Insert text, the date and time, or the page number into a text range.

Example

Use the TextRange property of the TextFrame object to return a TextRange object for any shape you specify. Use the Text property to return the string of text in the TextRange object. The following example adds a rectangle to the active publication and sets the text it contains.

Sub AddTextToShape() 
    With ActiveDocument.Pages(1).Shapes.AddShape(Type:=msoShapeRectangle, _ 
        Left:=72, Top:=72, Width:=250, Height:=140) 
        .TextFrame.TextRange.Text = "Here is some test text" 
    End With 
End Sub

Because the Text property is the default property of the TextRange object, the following two statements are equivalent.

ActiveDocument.Pages(1).Shapes(1).TextFrame _ 
    .TextRange.text = "Here is some test text" 
ActiveDocument.Pages(1).Shapes(1).TextFrame _ 
    .TextRange = "Here is some test text"

Use the HasTextFrame property to determine whether a shape has a text frame, and use the HasText property to determine whether the text frame contains text.

Use the TextRange property of the Selection object to return the currently selected text. The following example copies the selection to the Clipboard.

Sub CopyAndPasteText() 
    With ActiveDocument 
        .Selection.TextRange.Copy 
        .Pages(1).Shapes(1).TextFrame.TextRange.Paste 
    End With 
End Sub

Use one of the following methods to return a portion of the text of a TextRange object: Characters, Lines, Paragraphs, or Words. The following example formats the second word in the first shape on the first page of the active publication. For this example to work, the specified shape must contain text.

Sub FormatWords() 
    With ActiveDocument.Pages(1).Shapes(1).TextFrame _ 
            .TextRange.Words(2).Font 
        .Bold = msoTrue 
        .Size = 15 
        .Name = "Text Name" 
    End With 
End Sub

Use one of the following methods to insert characters into a TextRange object: InsertAfter, InsertBefore, InsertDateTime, InsertPageNumber, or InsertSymbol. This example inserts a new line with text after any existing text in the first shape on the first page of the active publication.

Sub InsertNewText() 
    Dim intCount As Integer 
    With ActiveDocument.Pages(1).Shapes(1).TextFrame _ 
            .TextRange 
        For intCount = 1 To 3 
            .InsertAfter vbLf & "This is a test." 
        Next intCount 
    End With 
End Sub

Methods

Name
Characters
Collapse
Copy
Cut
Delete
Expand
InsertAfter
InsertBarcode
InsertBefore
InsertDateTime
InsertMailMergeField
InsertPageNumber
InsertSymbol
Lines
Move
MoveEnd
MoveStart
Paragraphs
Paste
Select
Words

Properties

Name
Application
BoundHeight
BoundLeft
BoundTop
BoundWidth
ContainingObject
DropCap
Duplicate
End
Fields
Find
Font
Hyperlinks
InlineShapes
LanguageID
Length
LinesCount
MajorityFont
MajorityParagraphFormat
ParagraphFormat
ParagraphsCount
Parent
Script
Start
Story
Text
WordsCount
© 2017 Microsoft