Come stampare i commenti inseriti dai revisori quando si usa la funzionalità Revisioni in Visio 2010, in Visio 2007 o in Visio 2003

INTRODUZIONE

Questo articolo descrive una macro che è possibile usare per stampare i commenti inseriti dai revisori. È possibile utilizzare questa macro quando si utilizza la funzionalità Revisioni in Microsoft Visio 2010, in Microsoft Office Visio 2007 o in Microsoft Office Visio 2003.

Ulteriori informazioni

Quando si usa la funzionalità Revisioni in Visio, gli utenti che esaminano il disegno possono aggiungere le modifiche proposte. Le modifiche proposte sono note anche come markup. Il markup include forme, forme input penna e commenti. Quando si stampa un disegno contenente markup, i commenti inseriti dai revisori non vengono stampati. Utilizzare la macro illustrata in questo articolo per stampare i commenti inseriti dai revisori.

La macro estrae i commenti presenti nel disegno e quindi inserisce i commenti in una nuova forma. La nuova forma viene visualizzata all'esterno della pagina di disegno. Ridimensionare la forma e trascinarla nella pagina di disegno. Quando si stampa il disegno, i commenti vengono visualizzati nella nuova forma aggiunta al disegno.

Per creare ed eseguire la macro, seguire questa procedura.

Microsoft fornisce esempi di programmazione a scopo puramente illustrativo, senza alcuna garanzia di qualsiasi tipo, sia espressa che implicita, ivi incluse, senza limitazioni, le garanzie implicite di commerciabilità o idoneità per uno scopo particolare. In questo articolo si presuppone che l'utente conosca il linguaggio di programmazione in questione e gli strumenti utilizzati per creare ed eseguire il debug delle procedure. Gli esperti Microsoft sono autorizzati a fornire spiegazioni in merito alla funzionalità di una particolare routine, ma in nessun caso a modificare questi esempi per fornire funzionalità aggiuntive o a creare routine atte a soddisfare specifiche esigenze.

  1. Creare la macro. A tal fine, attenersi alla seguente procedura:

    1. Avviare Visio e quindi aprire il disegno.

    2. Premere ALT+F11 per avviare Microsoft Visual Basic Editor.

    3. Nel menu **Inserisci ** fare clic su Modulo.

    4. Copiare il codice seguente e quindi incollare il codice nella finestra FileName -Module Number (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. Premere CTRL+S per salvare il disegno.

    6. Scegliere Chiudi dal menu Filee tornare a Visio.

  2. Eseguire la macro. A tal fine, attenersi alla seguente procedura:

    1. Scegliere Macro dal menu Strumenti e quindi fare clic su Macro.
    2. Nell'elenco Nome macro fare clic sulla macro creata nel passaggio 1 e quindi fare clic su Esegui. Il nome della macro è FileName. Numero modulo. GetComments.

    La macro inserisce i commenti in una nuova forma visualizzata a sinistra della pagina di disegno.

  3. Ridimensionare la forma contenente i commenti e quindi trascinarla nella pagina di disegno. Se si desidera, formattare il testo nella forma. Quando si stampa il disegno, i commenti vengono visualizzati nella forma del disegno.