Comment imprimer des commentaires insérés par des réviseurs lorsque vous utilisez la fonctionnalité Suivi du balisage dans Visio 2010, Dans Visio 2007 ou Visio 2003
INTRODUCTION
Cet article décrit une macro que vous pouvez utiliser pour imprimer les commentaires insérés par les réviseurs. Vous pouvez utiliser cette macro lorsque vous utilisez la fonctionnalité Suivi du balisage dans Microsoft Visio 2010, dans Microsoft Office Visio 2007 ou dans Microsoft Office Visio 2003.
Informations supplémentaires
Lorsque vous utilisez la fonctionnalité Suivi du balisage dans Visio, les utilisateurs qui examinent le dessin peuvent ajouter les modifications proposées. Les modifications proposées sont également appelées balisage. Le balisage inclut des formes, des formes manuscrites et des commentaires. Lorsque vous imprimez un dessin qui contient du balisage, les commentaires insérés par les réviseurs ne sont pas imprimés. Utilisez la macro décrite dans cet article pour imprimer les commentaires insérés par les réviseurs.
La macro extrait les commentaires qui se trouvent dans le dessin, puis insère les commentaires dans une nouvelle forme. La nouvelle forme apparaît en dehors de la page de dessin. Redimensionnez la forme, puis faites glisser la forme vers la page de dessin. Lorsque vous imprimez le dessin, les commentaires apparaissent dans la nouvelle forme que vous avez ajoutée au dessin.
Pour créer et exécuter la macro, procédez comme suit.
Microsoft fournit des exemples de programmation à titre d'illustration uniquement, sans garantie expresse ou implicite. Cela inclut, sans y être limité, les garanties implicites de commercialisation et d'adaptation à un but en particulier. Cet article considère que vous connaissez le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les techniciens du Support technique Microsoft peuvent vous expliquer les fonctionnalités d'une procédure particulière, mais ils ne peuvent pas modifier les exemples en vue de vous fournir des fonctionnalités supplémentaires ou de créer des procédures répondant à vos besoins spécifiques.
Créez la macro. Pour cela, procédez comme suit :
Démarrez Visio, puis ouvrez votre dessin.
Appuyez sur Alt+F11 pour démarrer Microsoft Visual Basic Editor.
Dans le menu **Insérer **, cliquez sur Module.
Copiez le code suivant, puis collez-le dans la fenêtre FileName -Numéro de module (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
Appuyez sur Ctrl+S pour enregistrer le dessin.
Dans le menu Fichier , cliquez sur Fermer et Revenir à Visio.
Exécutez la macro. Pour cela, procédez comme suit :
- Dans le menu Outils , pointez sur Macros, puis cliquez sur Macros.
- Dans la liste des noms de macros, cliquez sur la macro que vous avez créée à l’étape 1, puis cliquez sur Exécuter. Le nom de la macro est FileName. Numéro du module. GetComments.
La macro insère les commentaires dans une nouvelle forme qui apparaît à gauche de la page de dessin.
Redimensionnez la forme qui contient les commentaires, puis faites glisser la forme vers la page de dessin. Si vous le souhaitez, mettez en forme le texte de la forme. Lorsque vous imprimez votre dessin, les commentaires apparaissent dans la forme de votre dessin.