Visio 2010、Visio 2007、Visio 2003 でマークアップの追跡機能を使用するときに校閲者によって挿入されるコメントを印刷する方法

導入

この記事では、校閲者によって挿入されたコメントを印刷するために使用できるマクロについて説明します。 このマクロは、Microsoft Visio 2010、Microsoft Office Visio 2007、または Microsoft Office Visio 2003 でマークアップの追跡機能を使用する場合に使用できます。

詳細情報

Visio で [マークアップの追跡] 機能を使用すると、図面を確認するユーザーは提案された変更を追加できます。 提案された変更は、マークアップとも呼ばれます。 マークアップには、図形、インク図形、コメントが含まれます。 マークアップを含む図面を印刷する場合、校閲者によって挿入されたコメントは印刷されません。 この記事で説明するマクロを使用して、校閲者によって挿入されたコメントを印刷します。

マクロは、図面内のコメントを抽出し、新しい図形にコメントを挿入します。 新しい図形が図面ページの外側に表示されます。 図形のサイズを変更し、図形を図面ページにドラッグします。 図面を印刷すると、図面に追加した新しい図形にコメントが表示されます。

マクロを作成して実行するには、次の手順に従います。

Microsoft は、例示のみを目的としてプログラミング例を提供しており、明示または黙示にかかわらず、いかなる責任も負わないものとします。 これには、市販性または特定の目的との適合性についての黙示の保証も含まれますが、これに限定はされません。 この記事は、説明されているプログラミング言語、手順を作成およびデバッグするために使用されているツールに読者が精通していることを前提にしています。 マイクロソフト サポート窓口では、特定のプロシージャの機能説明に関するご質問に対して支援いたしますが、本例を特定の目的を満たすために機能を追加したり、プロシージャを構築することは行いません。

  1. マクロを作成します。 これを行うには、次の手順を実行します。

    1. Visio を起動し、図面を開きます。

    2. Alt キーを押しながら F11 キーを押して、Microsoft Visual Basic エディターを起動します。

    3. **[挿入] ** メニューの [ モジュール] をクリックします。

    4. 次のコードをコピーし、 FileName - モジュール番号 (コード) ウィンドウにコードを貼り付けます。

      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. Ctrl + S キーを押して図面を保存します。

    6. [ ファイル ] メニューの [閉じる] をクリック し、Visio に戻ります

  2. マクロを実行します。 これを行うには、次の手順を実行します。

    1. [ ツール ] メニューの [ マクロ] をポイントし、[ マクロ] をクリックします。
    2. [マクロ名] ボックスの一覧で、手順 1. で作成したマクロをクリックし、[実行] をクリックします。 マクロの名前は FileName です。モジュール番号。GetComments。

    マクロは、図面ページの左側に表示される新しい図形にコメントを挿入します。

  3. コメントを含む図形のサイズを変更し、図形を図面ページにドラッグします。 必要な場合は、図形内のテキストの書式設定を行います。 図面を印刷すると、図面内の図形にコメントが表示されます。