2008-10-23 4 views
3

Word 2007에서 텍스트 색상을 변경하고 하이라이트를 사용하여 유사한 텍스트를 비교하는 간단한 .doc 파일이 있습니다. 내가 뭘하고 싶은데요 녹색 텍스트 또는 회색 강조의 모든 인스턴스를 각각 다른 색상으로 변경하는 것입니다.MS Word에서 강조 표시된 텍스트를 다른 색상으로 변경하려면 어떻게합니까?

VBA에서이 작업을 수행하는 간단한 방법이 있지만 다른 종류의 대답도 환영합니다.

편집 : 답을 고맙게 생각하지만 .doc 파일을 .docs로 유지할 수있는 방법이 선호됩니다.

답변

1

언제든지 파일을 HTML로 저장하고 색상을 바꿀 수 있습니다. 색상은

<span style='color:red'>... 

및 하이라이트로 표시됩니다

<span style='background:yellow;mso-highlight:yellow'>... 

이 문서는 간단하다 경우 조작하기 쉽게해야합니다.

질문의 편집 내용에 대한 편집 : 작업을 완료 한 후 파일을 다시 열고 .doc 파일로 다시 저장하십시오.

+0

실제로 mso-highlight : 뭔가 다른 키 - 값 쌍 (인코딩, 언어, 글꼴 선택 등에 관한) 중에서 숨길 수 있기 때문에 조금 더 복잡합니다. 나의 충고는 mso-highlight를 찾는다. 스팬 엘리먼트의 style 속성 어딘가에있는 것이다. – yannis

2

이것은 2007 년이 아니지만 아이디어가 적합해야합니다. 이 예제에서는 현재 강조 표시를 새 기본 강조 표시 (wdBrightGreen)로 변경하고 녹색 텍스트를 빨간색으로 변경합니다.

Sub ChangeColor 
Options.DefaultHighlightColorIndex = wdBrightGreen 

    Selection.Find.ClearFormatting 
    Selection.Find.Highlight = True 
    Selection.Find.Replacement.ClearFormatting 
    Selection.Find.Replacement.Highlight = True 
    Selection.Find.Execute Replace:=wdReplaceAll 

    Selection.Find.ClearFormatting 
    Selection.Find.Font.Color = wdColorBrightGreen 
    Selection.Find.Replacement.ClearFormatting 
    Selection.Find.Replacement.Font.Color = wdColorRed 
    With Selection.Find 
     .Text = "" 
     .Replacement.Text = "" 
     .Forward = True 
     .Wrap = wdFindContinue 
    End With 
    Selection.Find.Execute Replace:=wdReplaceAll 
End Sub 
0

이것은 당신의 목적을 위해 작동합니다 :

Sub RehiliteAll() 

    Const YOUR_REQUIRED_COLOR_IDX As Integer = 6 'RED' 
    Dim doc As Range 
    Set doc = ActiveDocument.Range 

    With doc.Find 
     .ClearFormatting 'resets default search options' 
     .Highlight = True 
     .Wrap = wdFindStop 

     While .Execute 

      If doc.HighlightColorIndex = YOUR_REQUIRED_COLOR_IDX Then 
       doc.Select 
       MsgBox doc.HighlightColorIndex 
       'Do stuff here' 
      End If 

      'doc has been reassigned to the matching' 
      'range; we do this so word keeps searching' 
      'forward' 
      doc.Collapse wdCollapseEnd 
     Wend 
    End With 

    Set doc = Nothing 
End Sub 

'I am closing comment quotes so that SO formatting' 
'does not get messed up too much.' 
1

내가 하나의 텍스트 선택 메뉴 옵션에서 옵션 "비슷한 형식으로 텍스트를 선택합니다"를 선택 후 컬러 텍스트의 한 부분을 강조하고 있다고 생각 홈 탭. 그런 다음 필요한 텍스트 색상을 선택하십시오. 희망이 있습니다.