Compartir a través de


Objeto TextRange (Publisher)

Contiene el texto que hay unido a una forma, además de las propiedades y los métodos de manipulación del texto.

Observaciones

Utilice la propiedad TextRange del objeto TextFrame para devolver un objeto TextRange para cualquier forma que especifique. Utilice la propiedad Text para devolver la cadena de texto del objeto TextRange.

Utilice la propiedad ShapeRange.HasTextFrame para determinar si una forma tiene un marco de texto y use la propiedad TextFrame.HasText para determinar si el marco de texto contiene texto.

Utilice la propiedad TextRange del objeto Selection para devolver el texto seleccionado actualmente.

Utilice uno de los siguientes métodos para devolver una parte del texto de un objeto TextRange: caracteres, líneas, párrafos o palabras.

Utilice uno de los siguientes métodos para insertar caracteres en un objeto TextRange: InsertAfter, InsertBefore, InsertDateTime, InsertPageNumber o InsertSymbol.

Ejemplo

En el ejemplo siguiente se agrega un rectángulo a la publicación activa y se establece el texto que contiene.

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

Dado que la propiedad Text es la propiedad predeterminada del objeto TextRange, las dos instrucciones siguientes son equivalentes.

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"

En el ejemplo siguiente se copia la selección en el Portapapeles.

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

En el ejemplo siguiente se da formato a la segunda palabra de la primera forma en la primera página de la publicación activa. Para que funcione este ejemplo, la forma especificada debe contener texto.

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

En este ejemplo se inserta una nueva línea con el texto después de cualquier texto existente en la primera forma de la primera página de la publicación activa.

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

Métodos

Propiedades

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.