À l’aide de graphiques SmartArt, les relations, les séquences de processus ou les hiérarchies peuvent être affichées rapidement et clairement.
Pour VBA, les graphiques SmartArt sont un groupe de formes. Cependant, les propriétés des formes peuvent uniquement être lues et non modifiées. Cette possibilité n’existe que depuis Excel 2007.
Voici un programme qui affiche la position des blocs individuels:
Sub SmartArtLecture() Dim i As Integer Dim s As String Dim sh As Shape ' Sélectionnez le premier objet SmartArt Set sh = ThisWorkbook.Worksheets("Feuil5").Shapes(1) ' Emplacement de tous les éléments de l'objet SmartArt For i = 1 To sh.GroupItems.Count s = s & Int(sh.GroupItems(i).Top) & _ " " & Int(sh.GroupItems(i).Left) & vbCrLf Next i MsgBox s End Sub
Commentaires:
■ La collection GroupItems comprend tous les éléments du groupe.
■ Un élément individuel du groupe peut être adressé via un index.
■ Les propriétés en haut et à gauche des blocs individuels sont collectées et éditées.