Objet forme (projet)

Représente un objet dans un rapport de projet, tel qu’un graphique, un tableau de rapport, une zone de texte, un dessin à forme libre ou une image.

Remarques

L’objet Forme est membre de la collection Formes , qui inclut toutes les formes du rapport.

Remarque

L’enregistrement des macros pour l’objet Shape n’est pas implémenté. En d’autres termes, lorsque vous enregistrez une macro dans Project et ajoutez manuellement une forme ou modifiez des éléments de forme, les étapes d’ajout et de manipulation de la forme ne sont pas enregistrées.

Trois objets représentent des formes : la collection Formes , qui représente toutes les formes d’un document ; l’objet ShapeRange , qui représente un sous-ensemble spécifié des formes d’un document (par exemple, un objet ShapeRange peut représenter les formes un et quatre du document, ou toutes les formes sélectionnées sur le document) ; et l’objet Shape , qui représente une forme unique sur un document. Pour utiliser plusieurs formes simultanément ou des formes faisant partie de la sélection, utilisez une collection ShapeRange.

Utilisez Shapes(Index), où Index est le nom ou le numéro d’index, pour renvoyer un objet Shape unique.

Exemple

Dans l’exemple suivant, la macro TestTextShape crée une forme de zone de texte, ajoute du texte et modifie le style de forme, le remplissage, la ligne, l’ombre et les propriétés de réflexion. La macro FlipShape retourne la forme de haut en bas.

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

La figure 1 montre le résultat, où la forme est sélectionnée pour rendre disponible l’onglet FORMAT du ruban sous OUTILS DE DESSIN , bien que l’onglet actif soit CRÉER sous OUTILS DE RAPPORT. Si la forme n’était pas sélectionnée, les OUTILS DE DESSIN et l’onglet FORMAT ne seraient pas visibles.

Figure 1. Test du modèle objet de forme

Test du modèle objet de forme

Méthodes

Nom
Appliquer
Copy
Cut
Supprimer
Duplicate
Flip
IncrementLeft
IncrementRotation
IncrementTop
PickUp
RerouteConnections
ScaleHeight
ScaleWidth
Select
SetShapesDefaultProperties
Ungroup
ZOrder

Propriétés

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

Voir aussi

Objet Rapport ObjetGraphique

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.