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.
Representa un intervalo de formas, que es un conjunto de formas de un documento. Un intervalo de formas puede contener una o varias formas, o incluso todas las formas del documento. Puede incluir las formas que desee(elegidas entre todas las formas del documento o todas las formas de la selección) para construir un intervalo de formas. Por ejemplo, podría construir una colección ShapeRange que contenga las tres primeras formas en un documento, todas las formas seleccionadas o todas las formas libres de un documento.
Nota:
[!NOTA] La mayoría de las operaciones que se pueden hacer con un objeto Shape, también puede realizarlas con un objeto ShapeRange que contiene sólo una forma. Algunas operaciones, cuando se realizan en un objeto ShapeRange que contiene más de una forma, provocan un error.
Observaciones
Use Shapes.Range (index), donde index es el número de índice de la forma o una matriz que contiene números de índice de formas, para devolver una colección ShapeRange que representa un conjunto de formas en una publicación. Use la función Array de Visual Basic para construir una matriz de números de índice.
Aunque puede usar el método Shapes.Range para devolver cualquier número de formas, es más sencillo usar el método Item si desea devolver solo un único miembro de la colección. Por ejemplo, Shapes (1) es más sencillo que Shapes.Range (1).
Use Selection.ShapeRange (index), donde index es el número de índice de la forma, para devolver un objeto Shape que representa una forma dentro de una selección.
Use el método Align , el método Distribute o el método ZOrder para colocar un conjunto de formas relativas entre sí o en relación con el documento.
Use el método Group , el método Regroup o el método Ungroup para crear y trabajar con una sola forma formada a partir de un intervalo de formas. La propiedad GroupItems devuelve el objeto GroupShapes , que representa todas las formas agrupadas para formar una forma.
Ejemplo
En el ejemplo siguiente se establece la trama de relleno para las formas uno a tres de la publicación activa.
Sub ChangeFillPattern()
ActiveDocument.Pages(1).Shapes.Range(Array(1, 2, 3)) _
.Fill.PresetGradient Style:=msoGradientDiagonalDown, _
Variant:=1, PresetGradientType:=msoGradientHorizon
End Sub
En el siguiente ejemplo se selecciona las dos primeras formas en la primera página de la publicación activa y, a continuación, Establece el relleno de la primera forma de la selección.
Sub ChangeFillForShapeRange()
ActiveDocument.Pages(1).Shapes.Range(Array(1, 2)).Select
Selection.ShapeRange(1).Fill.ForeColor.RGB = RGB(255, 0, 0)
End Sub
En este ejemplo se seleccionan todas las formas de la primera página de la publicación activa y, a continuación, se agrega y da formato al texto de la segunda forma del intervalo.
Sub SelectShapesOnPageOne()
ActiveDocument.Pages(1).Shapes.Range.Select
With Selection.ShapeRange(2).TextFrame.TextRange
.Text = "Shape Number 2"
.ParagraphFormat.Alignment = pbParagraphAlignmentCenter
.Font.Size = 25
End With
End Sub
Este ejemplo especifica un intervalo de formas y alinea a la izquierda y distribuye verticalmente las formas en la página.
Sub AlignDistributeShapes()
Dim rngShapes As ShapeRange
Set rngShapes = ActiveDocument.Pages(1).Shapes.Range
With rngShapes
.Align AlignCmd:=msoAlignLefts, RelativeTo:=msoFalse
.Distribute DistributeCmd:=msoDistributeVertically, RelativeTo:=msoTrue
End With
End Sub
Este ejemplo especifica un intervalo de formas y alinea a la izquierda y distribuye verticalmente las formas en la página.
Sub GroupShapes()
Dim rngShapes As ShapeRange
Set rngShapes = ActiveDocument.Pages(1).Shapes.Range
rngShapes.Group
rngShapes(1).Fill.OneColorGradient _
Style:=msoGradientFromCenter, _
Variant:=2, Degree:=1
End Sub
Métodos
- AddToCatalogMergeArea
- Alinear
- Apply
- Copy
- Cut
- Delete
- Distribuir
- Duplicate
- Flip
- GetHeight
- GetLeft
- GetTop
- GetWidth
- Group
- IncrementLeft
- IncrementRotation
- IncrementTop
- Elemento
- MoveIntoTextFlow
- MoveOutOfTextFlow
- PickUp
- Reagrupar
- RemoveFromCatalogMergeArea
- RerouteConnections
- SaveAsBuildingBlock
- SaveAsPicture
- ScaleHeight
- ScaleWidth
- Select
- SetShapesDefaultProperties
- Ungroup
- ZOrder
Propiedades
- Adjustments
- AlternativeText
- Application
- AutoShapeType
- BlackWhiteMode
- Callout
- ConnectionSiteCount
- Connector
- ConnectorFormat
- Count
- Fill
- Glow
- GroupItems
- HasTable
- HasTextFrame
- Height
- HorizontalFlip
- Hyperlink
- Id.
- InlineAlignment
- InlineTextRange
- IsInline
- Left
- Line
- LinkFormat
- LockAspectRatio
- Name
- Nodes
- OLEFormat
- Parent
- PictureFormat
- Reflection
- Rotation
- Shadow
- SoftEdge
- Tabla
- Tags
- TextEffect
- TextFrame
- TextWrap
- ThreeD
- Top
- Tipo
- VerticalFlip
- Vertices
- Width
- Asistente
- WizardTag
- WizardTagInstance
- ZOrderPosition
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.