Método Shape.ConnectedShapes (Visio)
Devuelve una matriz que contiene los identificadores (Id.) de las formas que están conectadas a la forma.
Sintaxis
expresión.
ConnectedShapes
( _Flags_
, _CategoryFilter_
)
expresión Variable que representa un objeto Shape.
Parameters
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
Flags | Obligatorio | VisConnectedShapesFlags | Filtra la matriz de identificadores de formas devueltas según la direccionalidad de los conectores. Vea los comentarios para conocer los valores posibles. |
CategoryFilter | Obligatorio | String | Filtra la matriz de identificadores de formas devueltas limitándola a los identificadores de las formas que coinciden con la categoría especificada. |
Valor devuelto
Long()
Comentarios
El valor de Flags debe ser una de las siguientes constantes de VisConnectedShapesFlags.
Constante | Valor | Descripción |
---|---|---|
visConnectedShapesAllNodes | 0 | Devuelve los identificadores de las formas asociadas con conexiones entrantes y salientes. |
visConnectedShapesIncomingNodes | 1 | Devuelve los identificadores de las formas asociadas con conexiones entrantes. |
visConnectedShapesOutgoingNodes | 2 | Devuelve los identificadores de las formas asociadas con conexiones salientes. |
Las categorías son cadenas definidas por el usuario que se pueden usar para clasificar las formas y, de esa manera, restringir la pertenencia en un contenedor. Las categorías se pueden definir en la celda User.msvShapeCategories, en la ShapeSheet de una forma. Puede definir varias categorías relativas a una forma si las separa con punto y coma.
Si el objeto de origen es una forma 1D o parte de un patrón, el método ConnectedShapes devuelve un error De origen no válido.
Si no existen formas conectadas aplicables, el método ConnectedShapes devuelve una matriz vacía.
Ejemplos
La siguiente macro de Visual Basic para Aplicaciones (VBA) muestra cómo usar el método ConnectedShapes para buscar los nombres de todas las formas en el otro extremo de las conexiones salientes de una forma seleccionada.
Código de ejemplo proporcionado por: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 siguiente macro de VBA muestra cómo usar el método ConnectedShapes para buscar los nombres de todas las formas en el otro extremo de las conexiones entrantes a una forma seleccionada.
Código de ejemplo proporcionado por: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
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.