René Nyffenegger's collection of things on the web
René Nyffenegger on Oracle - Most wanted - Feedback -
 

Dynamic connector [Visio Macros]

The following macro draws two rectangles with Visio's VBA and connects them with the Dynamic Connector.
sub DynamicConnector
 
  dim BeziehungSchablone as visio.document
  dim dynConnMaster      as visio.master
  dim dynConn            as visio.shape
 
  dim rect1              as shape
  dim rect2              as shape
 
  set BeziehungSchablone = Documents.OpenEx("C:\Program Files\Microsoft Office\Visio10\1031\Lösungen\Datenbank\Beziehung.vss", 4)
 
''set dynConnMaster      = BeziehungSchablone.Masters("Dynamic Connector"    )
  set dynConnMaster      = BeziehungSchablone.Masters("Dynamischer Verbinder")
 
  set dynConn            = activepage.drop (dynConnMaster, 0, 0)
 
  set rect1              = ActivePage.DrawRectangle(1, 2, 3, 4)
  set rect2              = ActivePage.DrawRectangle(5, 6, 7, 8)
 
  dynConn.Cells("BeginX").GlueTo rect1.Cells("PinX")
  dynConn.Cells("EndX"  ).GlueTo rect2.Cells("PinX")
 
  dynConn.Cells("EndArrow"    ).Formula="=27" '' Crow Feet
  dynConn.Cells("EndArrowSize").Formula="=6"  '' Jumbo, Big, Huge, whatever.
 
  dynConn.Text="Dynamic Connector"
 
end sub