Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Contiene una colección de objetos Shape que representan objetos de la capa de dibujo, donde el valor de Shape.IsInline es True. La colección de formas está limitada a las formas dentro de un intervalo de texto especificado.
Observaciones
La colección InlineShapes solo está disponible en el objeto TextRange :
- El uso de TextFrame.Story.TextRange.InlineShapes devuelve todas las formas insertadas en un marco de texto, incluidas las que están en desbordamiento.
- El uso de TextFrame.TextRange.InlineShapes solo devuelve formas insertadas visibles en un marco de texto y no aquellas que están desbordadas.
También se puede acceder a la colección InlineShapes desde Document.Stories(i). TextRange, donde i es el índice de la página activa de la publicación.
No está disponible en la colección Page.Shapes, ShapeRange que contiene la colección InlineShapes.
Utilice la propiedad InlineShapes del objeto TextRange para devolver una colección InlineShapes .
Use el método Item (index) para devolver una sola forma insertada.
Use el método Shapes.Range para devolver un objeto ShapeRange que contenga todos los miembros de la colección InlineShapes . Una matriz de índices o cadenas o un índice único o cadena puede pasarse como parámetro de la propiedad Range para seleccionar formas concretas o una forma dentro de la gama.
Ejemplo
En el ejemplo siguiente se busca la primera forma, un cuadro de texto de la página uno de la publicación y se anexa texto al final del intervalo de texto en el cuadro de texto si hay más de una forma en línea dentro del intervalo de texto.
Dim theShape As Shape
Set theShape = ActiveDocument.Pages(1).Shapes(1)
With theShape.TextFrame.TextRange
If .InlineShapes.Count > 1 Then
.InsertAfter (" There is more than one inline shape in this text box.")
End If
End With
En el ejemplo siguiente se busca la tercera forma en línea dentro de un cuadro de texto y se voltea verticalmente.
Dim theShape As Shape
Set theShape = ActiveDocument.Pages(1).Shapes(1)
With theShape.TextFrame.Story.TextRange
With .InlineShapes(3)
.Flip (msoFlipVertical)
End With
End With
En el ejemplo siguiente se establece una variable ShapeRange igual a la colección de formas en línea que existen dentro de un cuadro de texto. A continuación, se modifica cada forma en línea dentro del intervalo de alguna manera. En este ejemplo se supone que la primera forma de la página es un cuadro de texto que contiene tres formas en línea.
Dim theRange As ShapeRange
Set theRange = ActiveDocument.Pages(1).Shapes(1) _
.TextFrame.Story.TextRange.InlineShapes.Range
With theRange
.Item(1).Flip msoFlipVertical
.Item(2).MoveOutOfTextFlow
.Item(3).Delete
End With
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.