Opmerkingen afdrukken die door revisoren zijn ingevoegd wanneer u de functie Markeringen bijhouden gebruikt in Visio 2010, in Visio 2007 of in Visio 2003

INLEIDING

In dit artikel wordt een macro beschreven die u kunt gebruiken om opmerkingen af te drukken die door revisoren zijn ingevoegd. U kunt deze macro gebruiken wanneer u de functie Markeringen bijhouden gebruikt in Microsoft Visio 2010, in Microsoft Office Visio 2007 of in Microsoft Office Visio 2003.

Meer informatie

Wanneer u de functie Markeringen bijhouden in Visio gebruikt, kunnen gebruikers die de tekening bekijken voorgestelde wijzigingen toevoegen. Voorgestelde wijzigingen worden ook wel markeringen genoemd. Markeringen omvatten vormen, inktshapes en opmerkingen. Wanneer u een tekening met markeringen afdrukt, worden de opmerkingen die door de revisoren worden ingevoegd, niet afgedrukt. Gebruik de macro die in dit artikel wordt besproken om de opmerkingen af te drukken die door de revisoren zijn ingevoegd.

De macro extraheert de opmerkingen in de tekening en voegt de opmerkingen vervolgens in een nieuwe vorm in. De nieuwe shape wordt buiten de tekenpagina weergegeven. Wijzig de grootte van de shape en sleep de shape naar de tekenpagina. Wanneer u de tekening afdrukt, worden de opmerkingen weergegeven in de nieuwe vorm die u aan de tekening hebt toegevoegd.

Volg deze stappen om de macro te maken en uit te voeren.

Microsoft verstrekt programmeervoorbeelden alleen ter illustratie, zonder expliciete of impliciete garantie. daaronder mede begrepen, maar niet beperkt tot impliciete garanties met betrekking tot de verkoopbaarheid en/of geschiktheid voor een bepaald doel. In dit artikel wordt ervan uitgegaan dat u bekend bent met de programmeertaal VBScript, alsmede met de hulpprogramma's waarmee procedures worden gemaakt en waarmee fouten in procedures worden opgespoord. U kunt desgewenst contact opnemen met Microsoft Product Support Services voor uitleg over de functie van een bepaalde procedure. Microsoft Product Support Services is echter niet bereid de voorbeelden aan te passen om extra functies toe te voegen of om procedures te maken die aan uw specifieke eisen voldoen.

  1. Maak de macro. Ga hiervoor als volgt te werk:

    1. Start Visio en open de tekening.

    2. Druk op Alt+F11 om Microsoft Visual Basic Editor te starten.

    3. Klik in het menu **Invoegen** op Module.

    4. Kopieer de volgende code en plak de code in het venster Bestandsnaam -Modulenummer (code):

      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
      
    5. Druk op Ctrl+S om de tekening op te slaan.

    6. Klik in het menu Bestand op Sluiten en terugkeren naar Visio.

  2. Voer de macro uit. Ga hiervoor als volgt te werk:

    1. Wijs in het menu Extramacro's aan en klik op Macro's.
    2. Klik in de lijst macronamen op de macro die u in stap 1 hebt gemaakt en klik vervolgens op Uitvoeren. De naam van de macro is FileName. Modulenummer. GetComments.

    Met de macro worden de opmerkingen ingevoegd in een nieuwe vorm die links van de tekenpagina wordt weergegeven.

  3. Wijzig de grootte van de vorm die de opmerkingen bevat en sleep de shape vervolgens naar de tekenpagina. Maak desgewenst de tekst in de vorm op. Wanneer u de tekening afdrukt, worden de opmerkingen weergegeven in de vorm in de tekening.