Drucken von Kommentaren, die von Bearbeitern eingefügt werden, wenn Sie das Feature "Markup nachverfolgen" in Visio 2010, Visio 2007 oder Visio 2003 verwenden
EINFÜHRUNG
In diesem Artikel wird ein Makro beschrieben, mit dem Sie Kommentare drucken können, die von Bearbeitern eingefügt werden. Sie können dieses Makro verwenden, wenn Sie das Feature "Markup nachverfolgen" in Microsoft Visio 2010, in Microsoft Office Visio 2007 oder in Microsoft Office Visio 2003 verwenden.
Weitere Informationen
Wenn Sie das Feature "Markup nachverfolgen" in Visio verwenden, können Benutzer, die die Zeichnung überprüfen, vorgeschlagene Änderungen hinzufügen. Vorgeschlagene Änderungen werden auch als Markup bezeichnet. Markup umfasst Formen, Freihandformen und Kommentare. Wenn Sie eine Zeichnung drucken, die Markup enthält, werden die von den Bearbeitern eingefügten Kommentare nicht gedruckt. Verwenden Sie das makro, das in diesem Artikel behandelt wird, um die Kommentare zu drucken, die von den Bearbeitern eingefügt werden.
Das Makro extrahiert die Kommentare in der Zeichnung und fügt dann die Kommentare in eine neue Form ein. Das neue Shape wird außerhalb des Zeichenblatts angezeigt. Ändern Sie die Größe des Shapes, und ziehen Sie das Shape auf das Zeichenblatt. Wenn Sie die Zeichnung drucken, werden die Kommentare in der neuen Form angezeigt, die Sie der Zeichnung hinzugefügt haben.
Führen Sie die folgenden Schritte aus, um das Makro zu erstellen und auszuführen.
Die Verwendung der hier aufgeführten Informationen, Makro- oder Programmcodes geschieht auf Ihre eigene Verantwortung. Microsoft stellt Ihnen diese Informationen sowie Makro- und Programmlistings ohne Gewähr auf Richtigkeit, Vollständigkeit und/oder Funktionsfähigkeit sowie ohne Anspruch auf Support zur Verfügung. Die zur Verfügung gestellten Makro- und Programmierungsbeispiele sollen lediglich exemplarisch die Funktionsweise des Beispiels aufzeigen. Die Microsoft Support-Spezialisten können bei der Erläuterung der Funktionalität bestimmter Prozeduren helfen, jedoch werden sie diese Beispiele nicht in Bezug auf eine erweiterte Funktionalität verändern, noch werden sie Prozeduren entwickeln, die auf Ihre besonderen Bedürfnisse zugeschnitten sind.
Erstellen Sie das Makro. Gehen Sie dazu wie folgt vor:
Starten Sie Visio, und öffnen Sie dann Ihre Zeichnung.
Drücken Sie ALT+F11, um den Microsoft Visual Basic-Editor zu starten.
Klicken Sie im Menü **Einfügen ** auf "Modul".
Kopieren Sie den folgenden Code, und fügen Sie den Code dann in das Fenster "FileName –Modulnummer (Code)" ein:
Public Sub GetComments() Dim pagMarkup As Visio.Page Dim pag As Visio.Page Dim shp As Visio.Shape Dim sText As String Dim iRow As Integer Set pag = Visio.ActivePage sText = "Reviewer" & vbTab & "Date" & vbTab & "Comment" If pag.PageSheet.SectionExists(Visio.visSectionAnnotation, Visio.visExistsAnywhere) Then For iRow = 0 To pag.PageSheet.RowCount(Visio.visSectionAnnotation) - 1 sText = sText & vbCrLf & pag.Document.DocumentSheet.CellsSRC(Visio.visSectionReviewer, pag.PageSheet.CellsSRC(Visio.visSectionAnnotation, iRow, Visio.visAnnotationReviewerID).ResultIU - 1, Visio.visReviewerInitials).ResultStr("") sText = sText & pag.PageSheet.CellsSRC(Visio.visSectionAnnotation, iRow, Visio.visAnnotationMarkerIndex).ResultIU sText = sText & vbTab & Format(pag.PageSheet.CellsSRC(Visio.visSectionAnnotation, iRow, Visio.visAnnotationDate).ResultIU, "ddddd") sText = sText & vbTab & pag.PageSheet.CellsSRC(Visio.visSectionAnnotation, iRow, Visio.visAnnotationComment).ResultStr("") Next iRow End If For Each pagMarkup In pag.Document.Pages If pagMarkup.Type = visTypeMarkup Then If pagMarkup.OriginalPage = pag Then If pagMarkup.PageSheet.SectionExists(Visio.visSectionAnnotation, Visio.visExistsAnywhere) Then sText = sText & vbCrLf sText = sText & vbCrLf & pag.Document.DocumentSheet.CellsSRC(Visio.visSectionReviewer, pagMarkup.ReviewerID - 1, Visio.visReviewerName).ResultStr("") For iRow = 0 To pagMarkup.PageSheet.RowCount(Visio.visSectionAnnotation) - 1 sText = sText & vbCrLf & pag.Document.DocumentSheet.CellsSRC(Visio.visSectionReviewer, pagMarkup.PageSheet.CellsSRC(Visio.visSectionAnnotation, iRow, Visio.visAnnotationReviewerID).ResultIU - 1, Visio.visReviewerInitials).ResultStr("") sText = sText & pagMarkup.PageSheet.CellsSRC(Visio.visSectionAnnotation, iRow, Visio.visAnnotationMarkerIndex).ResultIU sText = sText & vbTab & Format(pagMarkup.PageSheet.CellsSRC(Visio.visSectionAnnotation, iRow, Visio.visAnnotationDate).ResultIU, "ddddd") sText = sText & vbTab & pagMarkup.PageSheet.CellsSRC(Visio.visSectionAnnotation, iRow, Visio.visAnnotationComment).ResultStr("") Next iRow End If End If End If Next pagMarkup Dim iAutoSize as Integer 'new iAutoSize = pag.AutoSize 'new pag.AutoSize = 0 'new Set shp = pag.DrawRectangle(-pag.PageSheet.Cells("PageWidth").ResultIU, 0, 0, pag.PageSheet.Cells("PageHeight").ResultIU) pag.AutoSize = iAutoSize 'new shp.AddSection visSectionUser 'new shp.AddNamedRow visSectionUser, "msvNoAutoSize", visTagDefault 'new shp.CellsU("User.msvNoAutoSize").FormulaU = 1 'new shp.Cells("Para.HorzAlign").Formula = "0" shp.Cells("VerticalAlign").Formula = "0" shp.Name = "Reviewers Comments" shp.Text = sText End Sub
Drücken Sie STRG+S, um die Zeichnung zu speichern.
Klicken Sie im Menü "Datei " auf "Schließen", und kehren Sie zu Visio zurück.
Führen Sie das Makro aus. Gehen Sie dazu wie folgt vor:
- Zeigen Sie im Menü "Extras " auf "Makros", und klicken Sie dann auf "Makros".
- Klicken Sie in der Liste " Makroname " auf das Makro, das Sie in Schritt 1 erstellt haben, und klicken Sie dann auf "Ausführen". Der Name des Makros lautet "FileName". Modulnummer. GetComments.
Das Makro fügt die Kommentare in ein neues Shape ein, das links vom Zeichenblatt angezeigt wird.
Ändern Sie die Größe der Form, die die Kommentare enthält, und ziehen Sie dann das Shape auf das Zeichenblatt. Formatieren Sie bei Bedarf den Text in der Form. Wenn Sie die Zeichnung drucken, werden die Kommentare in der Form in der Zeichnung angezeigt.