Objet Shape (Word)

Représente un objet dans la couche dessin, tel qu’une forme automatique, une forme libre, un objet OLE, un contrôle ActiveX ou une image. L’objet Shape est membre de la collection Shapes, qui inclut toutes les formes dans l’article principal d’un document ou dans tous les en-têtes et pieds de base d’un document.

Remarques

Une forme est toujours attachée à une plage d’ancrage. Vous pouvez positionner la forme n’importe où sur la page qui contient le point d’ancrage.

Il existe trois objets qui représentent des formes : la collection Shapes , 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 1 et 4 du document, ou toutes les formes sélectionnées sur le document) ; et l’objet Shape , qui représente une seule forme dans 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 seul objet Shape . L'exemple suivant retourne horizontalement la forme 1 du document actif.

ActiveDocument.Shapes(1).Flip msoFlipHorizontal

L’exemple suivant retourne horizontalement la forme nommée Rectangle 1 dans le document actif.

ActiveDocument.Shapes("Rectangle 1").Flip msoFlipHorizontal

Un nom par défaut est affecté à chaque forme lors de sa création. Par exemple, lorsque vous ajoutez trois formes différentes à un document, vous pouvez les nommer « Rectangle 2 », « TextBox 3 » et « Oval 4 ». Pour affecter un nom plus explicite à une forme, utilisez la propriété Name.

Utilisez ShapeRange (index), où index est le nom ou le numéro d’index, pour renvoyer un objet Shape qui représente une forme dans une sélection. L'exemple suivant montre comment définir le remplissage de la première forme de la sélection, sous réserve que cette sélection contienne au moins une forme.

Selection.ShapeRange(1).Fill.ForeColor.RGB = RGB(255, 0, 0)

L'exemple suivant montre comment définir le remplissage de toutes les formes de la sélection, sous réserve que cette sélection contienne au moins une forme.

Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 0, 0)

Pour ajouter un objet Shape à la collection de formes du document spécifié et renvoyer un objet Shape qui représente la forme qui vient d’être créée, utilisez une des méthodes suivantes de la collection Shapes : AddCallout, AddCurve, AddLabel, AddLine, AddOleControl, AddOleObject, AddPolyline, AddShape, AddTextbox, AddTextEffect ou BuildFreeForm. L’exemple suivant montre comment ajouter un rectangle au document actif.

ActiveDocument.Shapes.AddShape msoShapeRectangle, 50, 50, 100, 200

Utilisez GroupItems (index), où index est le nom de la forme ou le numéro d’index dans le groupe, pour renvoyer un objet Shape qui représente une seule forme dans une forme groupée.

Utilisez la méthode Group ou Regroup pour regrouper une plage de formes et renvoyer un seul objet Shape qui représente le nouveau groupe. Une fois un groupe a été créé, vous pouvez travailler avec le groupe de la même façon que vous travaillez avec n'importe quel autre forme.

Chaque objet Shape est ancré à une plage de texte. Une forme est ancrée au début du premier paragraphe contenant la plage d’ancrage. Une forme se trouve toujours sur la page contenant son ancrage.

Vous pouvez afficher l’ancrage lui-même en lui-même en fixant la propriété ShowObjectAnchors sur True. Les propriétés Top et Left de la forme déterminent ses positions verticale et horizontale. Les propriétés RelativeHorizontalPosition et RelativeVerticalPosition de la forme déterminent si la position est calculée à partir du paragraphe d'ancrage, de la colonne qui contient le paragraphe d'ancrage, de la marge ou du bord de la page.

Si la propriété LockAnchor de la forme est définie sur True, vous ne pouvez pas faire glisser l'ancrage sur la page.

Utilisez la propriété Fill pour renvoyer l’objet FillFormat , qui contient toutes les propriétés et méthodes de mise en forme du remplissage d’une forme fermée.

La propriété Shadow renvoie l'objet ShadowFormat qui permet de mettre en forme une ombre.

Pour renvoyer l'objet LineFormat qui contient les propriétés et méthodes permettant de mettre en forme des lignes et des flèches, utilisez la propriété Line.

La propriété TextEffect renvoie l'objet TextEffectFormat utilisé pour mettre en forme un objet WordArt.

La propriété Callout renvoie l'objet CalloutFormat utilisé pour mettre en forme des lignes de légende.

La propriété WrapFormat renvoie l'objet WrapFormat utilisé pour définir comment le texte s'ajuste autour des formes.

La propriété ThreeD renvoie l’objet ThreeDFormat , que vous utilisez pour créer des formes 3D.

Utilisez les méthodes PickUp et Apply pour transférer la mise en forme d’une forme à une autre.

Utilisez la méthode SetShapesDefaultProperties pour un objet Shape pour définir la mise en forme de la forme par défaut pour le document. Les nouvelles formes reçoivent un grand nombre des attributs de la forme par défaut.

Utilisez la propriété Type pour spécifier le type de forme : forme libre, forme automatique, objet OLE, callout ou image liée, par exemple. Utilisez la propriété AutoShapeType pour spécifier le type de forme automatique : ovale, rectangle ou bulle, par exemple.

Utilisez les propriétés Width et Height pour spécifier la taille de la forme.

La propriété TextFrame renvoie l’objet TextFrame , qui contient toutes les propriétés et méthodes pour attacher du texte à des formes et lier le texte entre des cadres de texte.

Les objets Shape sont ancrés à une plage de texte mais sont flottants et peuvent être placés n'importe où sur la page. Les objets InlineShape sont traités comme des caractères et, en tant que tels, placés dans une ligne de texte. Utilisez les méthodes ConvertToInlineShape et ConvertToShape pour convertir des formes d’un type à l’autre. Seuls les objets OLE, les images et les contrôles ActiveX peuvent être convertis en formes insérées.

Méthodes

Propriétés

Voir aussi

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.