Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 从连接器引脚到另一连接器引脚的连接_Excel_Vba_Visio_Connector_Pins - Fatal编程技术网

Excel 从连接器引脚到另一连接器引脚的连接

Excel 从连接器引脚到另一连接器引脚的连接,excel,vba,visio,connector,pins,Excel,Vba,Visio,Connector,Pins,在这种方法中有没有选择pin的方法 Application.ActiveWindow.Page.Shapes.ItemFromID(1).AutoConnect 我想连接两个形状,然后我想将第三个连接到创建的连接上,但不是在开始时,我需要将其连接到第四个管脚上。这就是我所拥有的: 这就是我想要的: 有什么想法吗?要得到形状的中心,我们必须使用这条线 Set object = AppVisio.ActiveWindow.Page.Shapes.ItemFromID(objectId) conn

在这种方法中有没有选择pin的方法

Application.ActiveWindow.Page.Shapes.ItemFromID(1).AutoConnect
我想连接两个形状,然后我想将第三个连接到创建的连接上,但不是在开始时,我需要将其连接到第四个管脚上。这就是我所拥有的: 这就是我想要的:


有什么想法吗?

要得到形状的中心,我们必须使用这条线

Set object = AppVisio.ActiveWindow.Page.Shapes.ItemFromID(objectId)
connectingXfrom = object .CellsU("PinX").Result("in")
connectingYfrom = object .CellsU("PinY").Result("in")
形状对象的中心位于点C[连接X起点,连接Y起点]

Application.ActiveWindow.Page.Shapes.ItemFromID(connectorShapeId).CellsSRC(1, 4, 0).FormulaU = connectingXfrom
Application.ActiveWindow.Page.Shapes.ItemFromID(connectorShapeId).CellsSRC(1, 4, 1).FormulaU = connectingYfrom
接下来的两行将连接器的第一个点移动到点p[连接X从,连接Y从]

Application.ActiveWindow.Page.Shapes.ItemFromID(connectorShapeId).CellsSRC(1, 4, 0).FormulaU = connectingXfrom
Application.ActiveWindow.Page.Shapes.ItemFromID(connectorShapeId).CellsSRC(1, 4, 1).FormulaU = connectingYfrom
如果要从连接1开始连接,但靠近对象2,则需要执行以下操作:

connectingXfrom = connectingXfrom - someDistanceValue
someDistanceValue可以是例如1.5 objectId是对象2形状的Id connectorShapeId是连接2形状的Id。