Shape.ConnectedShapes-Methode (Visio)
Gibt ein Array mit den IDs der Shapes zurück, die mit dem Shape verbunden sind.
Syntax
Ausdruck.
ConnectedShapes
( _Flags_
, _CategoryFilter_
)
expression Eine Variable, die ein Shape-Objekt darstellt.
Parameter
Name | Erforderlich/Optional | Datentyp | Beschreibung |
---|---|---|---|
Flags | Erforderlich | VisConnectedShapesFlags | Filtert das Array der zurückgegebenen Shape-IDs nach der Direktionalität der Verbinder. Mögliche Werte finden Sie in den Hinweisen. |
CategoryFilter | Erforderlich | String | Filtert das Array der zurückgegebenen Shape-IDs, indem es auf die IDs der Shapes beschränkt wird, die der angegebenen Kategorie entsprechen |
Rückgabewert
Long()
Hinweise
Der Wert von Flags muss eine der folgenden VisConnectedShapesFlags-Konstanten sein:
Konstante | Wert | Beschreibung |
---|---|---|
visConnectedShapesAllNodes | 0 | IDs von Shapes zurückgeben, die sowohl mit eingehenden als auch mit ausgehenden Verbindungen verknüpft sind |
visConnectedShapesIncomingNodes | 1 | IDs von Shapes zurückgeben, die mit eingehenden Verbindungen verknüpft sind |
visConnectedShapesOutgoingNodes | 2 | IDs von Shapes zurückgeben, die mit ausgehenden Verbindungen verknüpft sind |
Kategorien sind vom Benutzer definierte Zeichenfolgen, die zum Kategorisieren von Shapes und damit zum Einschränken der Mitgliedschaft in einem Container verwendet werden können. Kategorien können in der Zelle User.msvShapeCategories im ShapeSheet eines Shapes definiert werden. Sie können mehrere Kategorien für ein Shape definieren, indem Sie die Kategorien durch Semikolons trennen.
Wenn das Quellobjekt ein 1D-Shape oder Teil eines master ist, gibt die ConnectedShapes-Methode den Fehler Ungültige Quelle zurück.
Wenn keine geeigneten verbundenen Shapes vorhanden sind, gibt die ConnectedShapes-Methode ein leeres Array zurück.
Beispiele
Das folgende VBA-Makro (Visual Basic for Applications) beschreibt, wie Sie die ConnectedShapes-Methode verwenden, um die Namen aller Shapes am anderen Ende der ausgehenden Verbindungen aus einem ausgewählten Shape zu finden.
Beispielcode bereitgestellt von: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
Das folgende VBA-Makro beschreibt, wie Sie die ConnectedShapes-Methode verwenden, um die Namen aller Shapes am anderen Ende der eingehenden Verbindungen zu einem ausgewählten Shape zu finden.
Beispielcode bereitgestellt von: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
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.