0

当我使用 VBA 创建一个类似于我在工作表上绘制的矩形时,为什么没有连接点?添加最后一个节点后,我使用 ConvertToShape。我是否对所有点都使用 msoEditingAuto 或 msoEditingCorner 并不重要。只有在其中一个节点上使用 SetPosition 并使用现有位置时,我才能使连接点可用。

4

1 回答 1

0

以下来自 Microsoft对象参考的代码给出了一个使用矩形连接点的示例:

Sub buildshape3()

   Dim myDocument As Worksheet
   Dim s As Object
   Dim firstRect As Shape
   Dim secondRect As Shape
   Dim c As Shape

   Set myDocument = Worksheets(1)
   Set s = ActiveSheet.Shapes
   Set firstRect = s.AddShape(msoShapeRectangle, 100, 150, 150, 150) '50, 200, 100)

   firstRect.Fill.Transparency = 1
   Set secondRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)
   Set c = s.AddConnector(msoConnectorCurve, 0, 0, 100, 100)
   With c.ConnectorFormat
      .BeginConnect ConnectedShape:=firstRect, ConnectionSite:=1
      .EndConnect ConnectedShape:=secondRect, ConnectionSite:=1
      c.RerouteConnections
   End With

End Sub
于 2013-01-25T21:33:43.333 回答