Objet ShapeRange (Excel)

Représente une plage de formes, qui correspond à un ensemble de formes dans un document.

Remarques

Une plage de formes peut contenir une seule forme, plusieurs formes ou toutes les formes du document. Vous pouvez inclure les formes souhaitées (choisies parmi toutes les formes du document ou toutes les formes de la sélection) pour construire une plage de formes. Par exemple, vous pouvez générer une collection ShapeRange contenant les trois premières formes d’un document, toutes les formes sélectionnées d’un document ou toutes les formes libres d’un document.

Exemple

Retourner un ensemble de formes que vous spécifiez par nom ou numéro d’index

Utilisez Range (index), où index est le nom ou le numéro d’index de la forme ou un tableau qui contient des noms ou des numéros d’index de formes, pour renvoyer une collection ShapeRange qui représente un ensemble de formes sur un document. Utilisez la fonction Array pour construire un tableau de noms ou de numéros d’index.

Cet exemple permet de définir le motif de remplissage des formes 1 et 3 dans myDocument.

Set myDocument = Worksheets(1) 
myDocument.Shapes.Range(Array(1, 3)).Fill.Patterned _ 
 msoPatternHorizontalBrick

L’exemple suivant permet de définir le motif de remplissage des formes nommées « Oval 4 » et « Rectangle 5 » dans myDocument.

Bien que vous puissiez utiliser la propriété Range pour renvoyer un certain nombre de formes ou de diapositives, il est plus simple d’utiliser la méthode Item si vous voulez renvoyer un seul membre de la collection. Par exemple, Shapes(1) est plus simple que Shapes.Range(1).

Set myDocument = Worksheets(1) 
Set myRange = myDocument.Shapes.Range(Array("Oval 4", _ 
 "Rectangle 5")) 
myRange.Fill.Patterned msoPatternHorizontalBrick

Renvoyer tout ou partie des formes sélectionnées sur un document

La propriété ShapeRange de l’objet Selection permet de renvoyer toutes les formes de la sélection. L’exemple ci-dessous montre comment définir la couleur de remplissage de premier plan de toutes les formes de la sélection dans la fenêtre numéro un (en supposant qu’il existe au moins une forme dans la sélection).

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

Utilisez La sélection. ShapeRange (index), où index est le nom de la forme ou le numéro d’index, pour renvoyer une seule forme dans la sélection. L’exemple suivant permet de définir la couleur de premier plan de remplissage de la forme 2 de la collection de formes sélectionnées dans la fenêtre 1, en supposant que la sélection inclut au moins une forme.

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

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.