Visio 2010, Visio 2007 또는 Visio 2003에서 추적 태그 기능을 사용할 때 검토자가 삽입한 메모를 인쇄하는 방법

소개

이 문서에서는 검토자가 삽입한 메모를 인쇄하는 데 사용할 수 있는 매크로에 대해 설명합니다. Microsoft Visio 2010, Microsoft Office Visio 2007 또는 Microsoft Office Visio 2003에서 추적 태그 기능을 사용할 때 이 매크로를 사용할 수 있습니다.

추가 정보

Visio에서 추적 태그 기능을 사용하는 경우 드로잉을 검토하는 사용자는 제안된 변경 내용을 추가할 수 있습니다. 제안된 변경 내용을 태그라고도 합니다. 태그에는 도형, 잉크 셰이프 및 메모가 포함됩니다. 태그가 포함된 드로잉을 인쇄할 때 검토자가 삽입한 메모는 인쇄되지 않습니다. 이 문서에서 설명하는 매크로를 사용하여 검토자가 삽입한 메모를 인쇄합니다.

매크로는 드로잉에 있는 주석을 추출한 다음 새 도형에 주석을 삽입합니다. 새 셰이프가 드로잉 페이지 외부에 나타납니다. 셰이프 크기를 조정한 다음 셰이프를 드로잉 페이지로 끕니다. 드로잉을 인쇄하면 드로잉에 추가한 새 도형에 메모가 표시됩니다.

매크로를 만들고 실행하려면 다음 단계를 수행합니다.

Microsoft에서 제공하는 프로그래밍 예제는 예시를 위한 것일 뿐이며 이와 관련하여 명시적이거나 묵시적인 어떠한 보증도 하지 않습니다. 이는 상품성이나 특정 목적에 대한 적합성의 묵시적인 보증을 포함하며 이에 제한되지 않습니다. 이 문서에서는 예제에 사용되고 있는 프로그래밍 언어와 프로시저를 만들고 디버깅하는 데 사용되는 도구를 사용자가 잘 알고 있는 것으로 가정합니다. 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. 메모가 포함된 도형의 크기를 조정한 다음 셰이프를 드로잉 페이지로 끕니다. 원하는 경우 도형의 텍스트 서식을 지정합니다. 드로잉을 인쇄하면 드로잉의 도형에 메모가 표시됩니다.