2011-02-08 5 views
2

Word 2007에는 문서의 특정 용어를 검색하고 주석을 추가하는 사용자 양식이 있습니다. 이 코멘트에는 세 가지 카테고리가 있습니다. 각 카테고리에 대한 설명을 색으로 구분하고 싶습니다. 잠시 동안 나는 작동하는 해결책이 있지만 매우 느립니다. 주석을 작성할 때 주석 작성자를 직접 지정하는 다른 방법이 있습니까? 주석 생성을위한vba word 덧글 및 작성자

코드 : 각 주석에 다른 저자를 할당

For i = 0 To UBound(CritArray) 
    PosCount = 1 
    With Selection 
    .HomeKey wdStory 
     With .Find 
     .ClearFormatting 
      Do While .Execute(FindText:=CritArray(i), _ 
      Forward:=True, _ 
      MatchWholeWord:=True) 
Select Case i 
... 
End Select 
      PosCount = PosCount + 1 

      Selection.Comments.Add _ 
      Range:=Selection.Range, _ 
      Text:=MessArray(i) & CritArray(i) & "' - found for the" & Str(FoundCount) & ". time" 

      Loop 

     End With 
    End With 
Next 

코드 - 검토에서> 변경 내용 추적> 변경 내용 추적 옵션> 저자 댓글을 선택하면이 서로 다른 색상 코드 주석 결과 :

Dim CurrentExpField As String 

For Each objCom In ActiveDocument.Comments 

    CurrentExpField = Left$(objCom.Range.Text, 3) 
    objCom.Author = UCase(CurrentExpField) 
    objCom.Initial = UCase(CurrentExpField) 

Next 

답변

2

은 예, 댓글에 대한 Add 방법은 새로운 Comment 객체에 대한 참조를 반환 이후가 작성된 뒤 Comment에 대한 추가 속성을 설정할 수 있습니다. 즉, 한 번에 색상 코딩을 할 수 있습니다. 다음과 같이 코드를 약간 수정했습니다.

Dim cmtMyComment as Comment 

For i = 0 To UBound(CritArray) 
    PosCount = 1 
    With Selection 
    .HomeKey wdStory 
     With .Find 
     .ClearFormatting 
      Do While .Execute(FindText:=CritArray(i), _ 
      Forward:=True, _ 
      MatchWholeWord:=True) 
Select Case i 
... 
End Select 
      PosCount = PosCount + 1 

      Set cmtMyComment = Selection.Comments.Add(Range:=Selection.Range, _ 
      Text:=MessArray(i) & CritArray(i) & "' - found for the" & Str(FoundCount) & ". time") 

      cmtMyComment.Author = UCase(Left$(cmtMyComment.Range.Text, 3)) 
      cmtMyComment.Initial = UCase(Left$(cmtMyComment.Range.Text, 3)) 

      Loop 

     End With 
    End With 
Next 
+0

안녕하세요. 이 코드를 실행하는 구문 오류가 발생합니다. 문제는이 줄이어야한다고 생각합니다. Set cmtMyComment = Selection.Comments.Add _ – user366121

+0

밤늦게까지 죄송합니다. 지금 그 줄을 수정했습니다. 다시 시도하십시오. –

+0

안녕하세요. 예, 이제 작동합니다. 고마워. – user366121