Partager via


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 :Icône membre de la communauté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 :Icône membre de la communauté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.