ShapeRange-Objekt (Publisher)
Repräsentiert einen Formenbereich, eine Gruppe von Formen in einem Dokument ist. Ein Formbereich kann nur eine Form oder alle Formen im Dokument enthalten. Sie können die gewünschten Shapes – aus allen Formen im Dokument oder aus allen Formen in der Auswahl – auswählen, um einen Formbereich zu erstellen. Beispielsweise können Sie eine ShapeRange -Auflistung erstellen, die die ersten drei Formen in einem Dokument, alle markierten Formen in einem Dokument oder alle Freihandformen in einem Dokument enthält.
Hinweis
[!HINWEIS] Die meisten Vorgänge, die Sie mit ein Shape -Objekt möglich, auch mit einem ShapeRange -Objekt möglich, die nur eine Form enthält. Einige Vorgänge, die für ein ShapeRange-Objekt ausgeführt werden, das mehr als eine Form enthält, verursachen einen Fehler.
Hinweise
Verwenden Sie Shapes.Range (Index), wobei index die Indexnummer der Form oder ein Array ist, das Indexnummern von Formen enthält, um eine ShapeRange-Auflistung zurückzugeben, die eine Gruppe von Formen in einer Publikation darstellt. Verwenden Sie die Array-Funktion von Visual Basic, um ein Array von Indexnummern zu erstellen.
Obwohl Sie die Shapes.Range-Methode verwenden können, um eine beliebige Anzahl von Formen zurückzugeben, ist es einfacher, die Item-Methode zu verwenden, wenn Sie nur ein einzelnes Element der Auflistung zurückgeben möchten. Beispielsweise ist Shapes (1) einfacher als Shapes.Range (1).
Verwenden Sie Selection.ShapeRange (Index), wobei index die Indexnummer der Form ist, um ein Shape-Objekt zurückzugeben, das eine Form innerhalb einer Auswahl darstellt.
Verwenden Sie die Align-Methode , die Distribute-Methode oder die ZOrder-Methode , um eine Gruppe von Formen relativ zueinander oder relativ zum Dokument zu positionieren.
Verwenden Sie die Group-Methode , die Regroup-Methode oder die Ungroup-Methode , um eine einzelne Form aus einem Formbereich zu erstellen und zu arbeiten. Die GroupItems-Eigenschaft gibt das GroupShapes-Objekt zurück, das alle Formen darstellt, die zu einer Form gruppiert wurden.
Beispiel
Das folgende Beispiel legt das Füllmuster für die Formen 1 bis 3 der aktiven Publikation fest.
Sub ChangeFillPattern()
ActiveDocument.Pages(1).Shapes.Range(Array(1, 2, 3)) _
.Fill.PresetGradient Style:=msoGradientDiagonalDown, _
Variant:=1, PresetGradientType:=msoGradientHorizon
End Sub
Das folgende Beispiel wählt die ersten beiden Formen auf der ersten Seite der aktiven Publikation und dann die Füllung für die erste Form in der Markierung festgelegt.
Sub ChangeFillForShapeRange()
ActiveDocument.Pages(1).Shapes.Range(Array(1, 2)).Select
Selection.ShapeRange(1).Fill.ForeColor.RGB = RGB(255, 0, 0)
End Sub
In diesem Beispiel werden alle Shapes auf der ersten Seite der aktiven Publikation ausgewählt und anschließend Text in der zweiten Form im Bereich hinzugefügt und formatiert.
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
In diesem Beispiel wird einen Formbereich gibt und links ausgerichtet und vertikal verteilt die Formen auf der Seite.
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
In diesem Beispiel wird einen Formbereich gibt und links ausgerichtet und vertikal verteilt die Formen auf der Seite.
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
Methoden
- AddToCatalogMergeArea
- Align
- Apply
- Copy
- Cut
- Delete
- Distribute
- Duplicate
- Flip
- GetHeight
- GetLeft
- GetTop
- GetWidth
- Gruppe
- IncrementLeft
- IncrementRotation
- IncrementTop
- Item
- MoveIntoTextFlow
- MoveOutOfTextFlow
- PickUp
- Regroup
- RemoveFromCatalogMergeArea
- RerouteConnections
- SaveAsBuildingBlock
- SaveAsPicture
- ScaleHeight
- ScaleWidth
- Select
- SetShapesDefaultProperties
- Ungroup
- ZOrder
Eigenschaften
- 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
- Table
- Tags
- TextEffect
- TextFrame
- TextWrap
- ThreeD
- Top
- Typ
- VerticalFlip
- Vertices
- Width
- Assistent
- WizardTag
- WizardTagInstance
- ZOrderPosition
Siehe auch
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.