Méthode Shape.ConnectedShapes (Visio)
Renvoie un tableau qui contient les identificateurs (ID) des formes connectées à la forme.
Syntaxe
expression.
ConnectedShapes
( _Flags_
, _CategoryFilter_
)
expression Une variable qui représente uneForme d’objet.
Paramètres
Nom | Requis/Facultatif | Type de données | Description |
---|---|---|---|
Flags | Obligatoire | VisConnectedShapesFlags | Filtre le tableau des ID de forme renvoyés par la direction de leurs liens. Voir la section Remarques pour les valeurs possibles. |
CategoryFilter | Obligatoire | String | Filtre le tableau des ID de forme renvoyés en le limitant aux ID des formes qui correspondent à la catégorie spécifiée. |
Valeur renvoyée
Long()
Remarques
La valeur du paramètre Flags doit être l’une des constantes VisConnectedShapesFlags suivantes.
Constante | Valeur | Description |
---|---|---|
visConnectedShapesAllNodes | 0 | Renvoyer les ID des formes associées à la fois aux connexions entrantes et sortantes. |
visConnectedShapesIncomingNodes | 1 | Renvoyer les ID des formes associées aux connexions entrantes. |
visConnectedShapesOutgoingNodes | 2 | Renvoyer les ID des formes associées aux connexions sortantes. |
Les catégories sont des chaînes définies par l’utilisateur que vous pouvez utiliser pour classer les formes, et par conséquent pour restreindre l’appartenance dans un conteneur. Vous pouvez définir des catégories dans la cellule User.msvShapeCategories de la feuille ShapeSheet pour une forme. Vous pouvez définir plusieurs catégories pour une forme en les séparant par des points-virgules.
Si l’objet source est une forme 1D ou une partie d’une master, la méthode ConnectedShapes renvoie une erreur Source non valide.
S’il n’existe aucune forme connectée éligible, la méthode ConnectedShapes renvoie un tableau vide.
Exemples
La macro Visual Basic pour Applications (VBA) suivante montre comment utiliser la méthode ConnectedShapes pour rechercher les noms de toutes les formes à l’autre extrémité des connexions sortantes à partir d’une forme sélectionnée.
Exemple de code fourni par :Fred Diggs
Public Sub ConnectedShapes_Outgoing_Example()
' Get the shapes that are connected to the selected shape
' by outgoing connectors.
Dim vsoShape As Visio.Shape
Dim lngShapeIDs() As Long
Dim intCount As Integer
If ActiveWindow.Selection.Count = 0 Then
MsgBox ("Please select a shape that has connections")
Exit Sub
Else
Set vsoShape = ActiveWindow.Selection(1)
End If
lngShapeIDs = vsoShape.ConnectedShapes _
(visConnectedShapesOutgoingNodes, "")
Debug.Print "Shapes at the end of outgoing connectors:"
For intCount = 0 To UBound(lngShapeIDs)
Debug.Print ActivePage.Shapes(lngShapeIDs(intCount)).Name
Next
End Sub
La macro VBA suivante montre comment utiliser la méthode ConnectedShapes pour rechercher les noms de toutes les formes à l’autre extrémité des connexions entrantes à une forme sélectionnée.
Exemple de code fourni par :Fred Diggs
Public Sub ConnectedShapes_Incoming_Example()
' Get the shapes that are at the other end of
' incoming connections to a selected shape
Dim vsoShape As Visio.Shape
Dim lngShapeIDs() As Long
Dim intCount As Integer
If ActiveWindow.Selection.Count = 0 Then
MsgBox ("Please select a shape that has connections.")
Exit Sub
Else
Set vsoShape = ActiveWindow.Selection(1)
End If
lngShapeIDs = vsoShape.ConnectedShapes _
(visConnectedShapesIncomingNodes, "")
Debug.Print "Shapes that are at the other end of incoming connections:"
For intCount = 0 To UBound(lngShapeIDs)
Debug.Print ActivePage.Shapes(lngShapeIDs(intCount)).Name
Next
End Sub
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.