Shape-Objekt (Project)

Stellt ein Objekt in einem Project-Bericht dar, z. B. ein Diagramm, eine Berichtstabelle, ein Textfeld, eine Freihandformzeichnung oder ein Bild.

HinwBemerkungeneise

Das Shape-Objekt ist ein Element der Shapes-Auflistung , die alle Shapes im Bericht enthält.

Hinweis

Die Makroaufzeichnung für das Shape-Objekt ist nicht implementiert. Das heißt, wenn Sie ein Makro in Project aufzeichnen und manuell eine Form hinzufügen oder Shape-Elemente bearbeiten, werden die Schritte zum Hinzufügen und Bearbeiten der Form nicht aufgezeichnet.

Es gibt drei Objekte, die Formen darstellen: die Shapes-Auflistung , die alle Formen in einem Dokument darstellt; das ShapeRange-Objekt , das eine angegebene Teilmenge der Formen in einem Dokument darstellt (z. B. könnte ein ShapeRange-Objekt formen 1 und vier im Dokument darstellen oder alle ausgewählten Formen im Dokument darstellen); und das Shape-Objekt , das eine einzelne Form in einem Dokument darstellt. Wenn Sie mit mehreren Formen gleichzeitig oder mit Formen innerhalb einer Auswahl arbeiten möchten, verwenden Sie eine Sammlung ShapeRange.

Verwenden Sie Shapes(Index), wobei Index der Name der Form oder die Indexnummer ist, um ein einzelnes Shape-Objekt zurückzugeben.

Beispiel

Im folgenden Beispiel erstellt das TestTextShape-Makro eine Textfeldform, fügt Text hinzu und ändert die Eigenschaften für Formart, Füllung, Linie, Schatten und Reflektion. Das FlipShape-Makro kippt die Form von oben nach unten.

Sub TestTextShape()
    Dim theReport As Report
    Dim textShape As Shape
    Dim reportName As String
    
    reportName = "Simple scalar chart"
    
    Set theReport = ActiveProject.Reports(reportName)
    Set textShape = theReport.Shapes.AddTextbox(msoTextOrientationHorizontal, 30, 30, 300, 100)
    textShape.Name = "TestTextBox"
    
    textShape.TextFrame2.TextRange.Characters.Text = "This is a test. It's only a test. " _
        & "If it had been real information, there would be some real text here."
    textShape.TextFrame2.TextRange.Characters(1, 15).ParagraphFormat.FirstLineIndent = 0
    
    ' Set the font for the first 15 characters to dark blue bold.
    With textShape.TextFrame2.TextRange.Characters(1, 15).Font
        .Fill.Visible = msoTrue
        .Fill.ForeColor.ObjectThemeColor = msoThemeColorAccent5
        .Fill.Transparency = 0
        .Fill.Solid
        .Size = 14
        .Bold = msoTrue
    End With
    
    textShape.ShapeStyle = msoShapeStylePreset42
    
    With textShape.Fill
        .Visible = msoTrue
        .ForeColor.RGB = RGB(255, 255, 0)
        .Transparency = 0
        '.Solid
    End With
   
    With textShape.Line
        .Visible = msoTrue
        .ForeColor.ObjectThemeColor = msoThemeColorText1
        .ForeColor.TintAndShade = 0
        .ForeColor.Brightness = 0
        .Transparency = 0
    End With

    textShape.Shadow.Type = msoShadow22
    textShape.Reflection.Type = msoReflectionType3
End Sub

Sub FlipShape()
    Dim theReport As Report
    Dim theShape As Shape
    Dim reportName As String
    Dim shapeName As String
    
    reportName = "Simple scalar chart"
    shapeName = "TestTextBox"
    
    Set theShape = ActiveProject.Reports(reportName).Shapes(shapeName)

    theShape.Flip msoFlipVertical
    theShape.Select
End Sub

Abbildung 1 zeigt das Ergebnis, in dem die Form ausgewählt ist, um die Registerkarte FORMAT des Menübands unter ZEICHENTOOLS verfügbar zu machen, obwohl die aktive Registerkarte ENTWURF unter BERICHTSTOOLS ist. Wenn die Form nicht ausgewählt wäre, wären ZEICHENTOOLS und die Registerkarte FORMAT nicht sichtbar.

Abbildung 1: Testen des Form-Objektmodells

Testen des Form-Objektmodells

Methoden

Name
Apply
Copy
Cut
Delete
Duplicate
Flip
IncrementLeft
IncrementRotation
IncrementTop
PickUp
RerouteConnections
ScaleHeight
ScaleWidth
Select
SetShapesDefaultProperties
Ungroup
ZOrder

Eigenschaften

Name
Adjustments
AlternativeText
Anwendung
AutoShapeType
BackgroundStyle
BlackWhiteMode
Callout
Chart
Child
ConnectionSiteCount
Connector
ConnectorFormat
Fill
Glow
GroupItems
HasChart
HasTable
Height
HorizontalFlip
ID
Left
Line
LockAspectRatio
Name
Nodes
Parent
ParentGroup
Reflection
Rotation
Shadow
ShapeStyle
SoftEdge
Table
TextEffect
TextFrame
TextFrame2
ThreeD
Titel
Top
Typ
VerticalFlip
Vertices
Visible
Width
ZOrderPosition

Siehe auch

Diagrammobjekt des Berichtsobjekts

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.