Objet Shapes (Word)
Collection d’objets Shape qui représentent toutes les formes d’un document ou toutes les formes de tous les en-têtes et pieds de page d’un document. Chaque objet Shape représente un objet de la couche de dessin, par exemple une forme automatique, une forme libre, un objet OLE ou une image.
Si vous souhaitez travailler avec un sous-ensemble des formes d’un document ( par exemple, pour effectuer une action uniquement sur les formes automatiques du document ou uniquement sur les formes sélectionnées), vous devez construire une collection ShapeRange qui contient les formes que vous souhaitez utiliser.
Utilisez la propriété Shapes pour renvoyer la collection Shapes. L'exemple suivant montre comment sélectionner toutes les formes du document actif.
ActiveDocument.Shapes.SelectAll
Notes
Si vous souhaitez effectuer une action (comme supprimer ou définir une propriété) sur toutes les formes d’un document en même temps, utilisez la méthode Range pour créer un objet ShapeRange qui contient toutes les formes de la collection Shapes , puis appliquez la propriété ou la méthode appropriée à l’objet ShapeRange .
Utilisez l’une des méthodes suivantes de la collection Shapes : Add3DModel, AddCallout, AddCurve, AddLabel, AddLine, AddOleControl, AddOleObject, AddPolyline, AddShape, AddTextbox, AddTextEffect ou BuildFreeForm pour ajouter une forme à un document renvoyant un objet Shape qui représente la forme nouvellement créée. L'exemple suivant ajoute un rectangle au document actif.
ActiveDocument.Shapes.AddShape msoShapeRectangle, 50, 50, 100, 200
Utilisez Shapes (Index), où Index est le nom ou le numéro d’index, pour renvoyer un seul objet Shape . L'exemple suivant montre comment retourner horizontalement la première forme du document actif.
ActiveDocument.Shapes(1).Flip msoFlipHorizontal
Cet exemple montre comment retourner horizontalement la forme nommée « Rectangle 1 » du document actif.
ActiveDocument.Shapes("Rectangle 1").Flip msoFlipHorizontal
Un nom par défaut est affecté à chaque forme lors de sa création. Par exemple, si vous ajoutez trois formes différentes à un document, elles peuvent être nommées « Rectangle 2 », « TextBox 3 » et « Oval 4 ». Pour donner à une forme un nom plus explicite, définissez la propriété Name .
La collection Shapes n’inclut pas d’objets InlineShape . Les objets InlineShape sont traités comme des caractères et, en tant que tels, insérés dans une ligne 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. Utilisez la méthode ConvertToInlineShape et la méthode 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.
La propriété Count de cette collection dans un document renvoie le nombre d’éléments de l’article principal uniquement. Pour dénombrer les formes de tous les en-têtes et pieds de page, utilisez la collection Shapes avec un objet HeaderFooter.
Référence du modèle objet Word
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.