■Excel Object 作成し、つなぐ


Option Explicit

Sub prep() 'テストシート作成
With Sheets.Add
.Rectangles.Add(100, 100, 100, 10).OnAction = "try"
.Rectangles.Add(300, 100, 100, 10).OnAction = "try"
End With
End Sub

Sub try()
Static x As String
Dim ws As Worksheet

If Len(x) = 0 Then
If MsgBox("connect?", vbYesNo) = vbNo Then Exit Sub
x = Application.Caller
Else
Set ws = ActiveSheet
With ws.Shapes.AddConnector(msoConnectorElbow, 0, 0, 0, 0)
.Line.EndArrowheadStyle = msoArrowheadTriangle
With .ConnectorFormat
.BeginConnect ws.Shapes(x), 4
.EndConnect ws.Shapes(Application.Caller), 2
End With
End With
x = ""
Set ws = Nothing
End If
End Sub

■参考:
http://oshiete1.goo.ne.jp/qa4251853.html