Gewusst wie: Programmgesteuertes Hinzufügen von Shapes zu Visio-Dokumenten
Sie können Shapes zu einem Microsoft Office Visio-Dokument hinzufügen, indem Sie die Masters aus einer Schablone abrufen und die Shapes auf der aktiven Seite ablegen.
Weitere Informationen finden Sie in der VBA-Referenzdokumentation für die Microsoft.Office.Interop.Visio.Documents.Add-Methode, die Microsoft.Office.Interop.Visio.Application.ActivePage-Eigenschaft und die Microsoft.Office.Interop.Visio.Page.Drop-Methode.
Hinzufügen von Shapes zu einem Visio-Dokument
So fügen Sie Shapes zu einem Visio-Dokument hinzu
Rufen Sie bei aktivem Dokument die Masters aus der Documents.Masters-Auflistung ab, und legen Sie die Shapes im aktiven Dokument ab.Sie können einen Master mit dem Index oder dem Masternamen abrufen.
Im folgenden Beispiel wird ein leeres Visio-Dokument erstellt und anschließend mit angedockter Schablone Standard-Shapes geöffnet.Der Code ruft dann mehrere Shapes ab und legt sie auf der aktiven Seite ab.
Me.Application.Documents.Add("") Dim visioDocs As Visio.Documents = Me.Application.Documents Dim visioStencil As Visio.Document = visioDocs.OpenEx("Basic Shapes.vss", CShort(Microsoft.Office.Interop.Visio.VisOpenSaveArgs.visOpenDocked)) Dim visioPage As Visio.Page = Me.Application.ActivePage Dim visioRectMaster As Visio.Master = visioStencil.Masters("Rectangle") Dim visioRectShape As Visio.Shape = visioPage.Drop(visioRectMaster, 4.25, 5.5) visioRectShape.Text = "Rectangle text." Dim visioStarMaster As Visio.Master = visioStencil.Masters("Star 7") Dim visioStarShape As Visio.Shape = visioPage.Drop(visioStarMaster, 2.0, 5.5) visioStarShape.Text = "Star text." Dim visioHexagonMaster As Visio.Master = visioStencil.Masters("Hexagon") Dim visioHexagonShape As Visio.Shape = visioPage.Drop(visioHexagonMaster, 7.0, 5.5) visioHexagonShape.Text = "Hexagon text."
this.Application.Documents.Add(""); Visio.Documents visioDocs = this.Application.Documents; Visio.Document visioStencil = visioDocs.OpenEx("Basic Shapes.vss", (short)Microsoft.Office.Interop.Visio.VisOpenSaveArgs.visOpenDocked); Visio.Page visioPage = this.Application.ActivePage; Visio.Master visioRectMaster = visioStencil.Masters.get_ItemU(@"Rectangle"); Visio.Shape visioRectShape = visioPage.Drop(visioRectMaster, 4.25, 5.5); visioRectShape.Text = @"Rectangle text."; Visio.Master visioStarMaster = visioStencil.Masters.get_ItemU(@"Star 7"); Visio.Shape visioStarShape = visioPage.Drop(visioStarMaster, 2.0, 5.5); visioStarShape.Text = @"Star text."; Visio.Master visioHexagonMaster = visioStencil.Masters.get_ItemU(@"Hexagon"); Visio.Shape visioHexagonShape = visioPage.Drop(visioHexagonMaster, 7.0, 5.5); visioHexagonShape.Text = @"Hexagon text.";
Siehe auch
Aufgaben
Gewusst wie: Programmgesteuertes Kopieren und Einfügen von Shapes in ein Visio-Dokument
Konzepte
Übersicht über das Visio-Objektmodell