저는 Word 2010을 사용하고 있습니다. AFAIK, 하지만 이 문제는 처음부터 Word에 있었습니다.
문서에 필드를 만들 때 필드를 강제로 적용하거나(예: F9 또는 마우스 오른쪽 버튼 클릭 메뉴 선택) 파일을 열거나 인쇄할 때의 부작용으로 필드가 업데이트됩니다. 모든 것이 좋습니다. 이것이 제가 필드를 사용한 이유입니다. 물론 대부분의 경우(때때로 대부분) 필드 업데이트로 인해 결과 텍스트가 변경되지 않습니다. 예를 들어, {numpages}, 상호 참조 또는 파일 이름은 변경되지 않을 가능성이 높습니다.
불행하게도 개정 추적이 켜져 있으면 모든 필드 업데이트에는 이전 결과가 삭제되고 새 값이 삽입된 것으로 표시됩니다. 이는 값이 변경되지 않은 경우에도 발생합니다. 열기, 닫기, 인쇄, 업데이트 등의 몇 가지 에피소드 후에는 상호 참조를 위한 다음과 같은 결과를 얻을 수 있습니다(이 예에서는 편집기의 제한으로 인해 밑줄 대신 굵은 글씨를 사용했습니다).
섹션 참조2.3.4
2.3.42.3.42.3.4
IMHO, Word에서는 결과 텍스트가 변경되지 않은 경우 이를 수정 버전으로 간주해서는 안 됩니다. 우선 Word에서 그렇게 하도록 하는 방법이 있다면 그것에 대해 알고 싶습니다.
대안으로, 내 문서에서 이러한 불필요한 (비) 개정을 쉽게 제거할 수 있는 방법이 있다면 (모든 "실제" 개정을 유지하면서) 그것이 내 문제에 대한 또 다른 해결책이 될 것입니다.
고마워요,
요시
답변1
완전한 해결책은 아니지만, 업데이트 직전에 추적된 개정판을 끄고 업데이트가 완료된 후 다시 켜면 중복 개정을 피할 수 있습니다. 더 나아가 매크로를 키보드 단축키에 바인딩하여 이러한 단계를 자동으로 수행할 수도 있습니다.
인쇄하기 전에 필드가 자동으로 업데이트되는 경우 이것이 별로 도움이 되지 않을 것 같지만 옵션 메뉴로 이동하여 해당 동작을 끄도록 선택할 수 있습니다.표시하다그리고 선택 해제인쇄하기 전에 필드 업데이트.
편집: 필드에서 불필요한 개정을 제거해야 하는 다음 매크로를 작성했습니다. 가능하다면 속도 개선이 필요할 수 있습니다.
Sub RemoveUnchangedFieldTrackedChanges()
Dim oField As Field
Dim oRevision As Revision
For Each oField In ActiveDocument.Fields
For Each oRevision In oField.Parent.Range.Revisions
Select Case oRevision.Type
Case wdRevisionInsert
With oRevision
revisionText = .Range.Text
For Each iRevision In oField.Parent.Range.Revisions
Select Case iRevision.Type
Case wdRevisionDelete
With iRevision
If StrComp(revisionText, iRevision.Range, vbTextCompare) = 0 Then
oRevision.Accept
iRevision.Accept
End If
End With
End Select
Next iRevision
End With
End Select
Next oRevision
Next oField
End Sub
답변2
나는 최근에 내가 제기한 질문에 대한 해결책은 개정 표시를 전혀 사용하지 않는 것임을 깨달았습니다. 대신 모든 변경을 마친 후 파일 비교를 사용하여 Rev 표시 버전의 문서를 만듭니다. 비교를 해보면 확실히 알 수 있죠선택하지 않음그만큼필드비교 설정 아래 옵션:
평소에는 별로 신경쓰지 않아서서식 지정그리고여백변경하면 해당 옵션도 선택 취소됩니다. 최종 결과(저는 일반적으로새 문서)은 중요한 변경 사항이 있고 중요하지 않고 주의를 산만하게 하는 (비)변경 사항(예: 필드 값)이 없는 문서를 제공합니다.