2017-04-26 3 views
0

그래서 특정 범위의 텍스트를 숨기도록 선택하는 코드 집합이 있으므로 숨겨진 텍스트를 선택하고 숨기기를 취소 할 매크로가 있어야합니다. 그러나 숨겨진 텍스트를 먼저 표시하지 않고 선택하는 방법을 모르겠습니다. 숨겨진 텍스트를 표시하지 않을 때 선택하는 방법이 있습니까? 특정 조건 만 선택하면 특정 텍스트 만 표시되는 동적 템플릿을 만들려고합니다. 지금까지 숨겨진 텍스트를 숨기기위한 코드입니다.MS Word 숨겨진 텍스트를 선택하는 방법

Sub Macro2() 
' 
' Macro2 Macro 
' 
' 
    Selection.MoveDown Unit:=wdLine, Count:=1 
    Selection.MoveUp Unit:=wdParagraph, Count:=4, Extend:=wdExtend 
    With Selection.Font 
     .NameFarEast = "+Body Asian" 
     .NameAscii = "+Body" 
     .NameOther = "+Body" 
     .Name = "+Body" 
     .Size = 11 
     .Bold = False 
     .Italic = False 
     .Underline = wdUnderlineNone 
     .UnderlineColor = wdColorAutomatic 
     .StrikeThrough = False 
     .DoubleStrikeThrough = False 
     .Outline = False 
     .Emboss = False 
     .Shadow = False 
     .Hidden = False 
     .SmallCaps = False 
     .AllCaps = False 
     .Color = wdColorAutomatic 
     .Engrave = False 
     .Superscript = False 
     .Subscript = False 
     .Spacing = 0 
     .Scaling = 100 
     .Position = 0 
     .Kerning = 0 
     .Animation = wdAnimationNone 
     .DisableCharacterSpaceGrid = False 
     .EmphasisMark = wdEmphasisMarkNone 
     .Ligatures = wdLigaturesNone 
     .NumberSpacing = wdNumberSpacingDefault 
     .NumberForm = wdNumberFormDefault 
     .StylisticSet = wdStylisticSetDefault 
     .ContextualAlternates = 0 
    End With 
End Sub 
+0

숨겨진 텍스트가 선택되어 화면에 표시되어야합니다. 따라서 코드에 다음 코드가 필요합니다 : 'ActiveDocument.ActiveWindow.View.ShowHiddenText = True' 그러나 코드 시작 부분에'Application.ScreenUpdating = False'로 사용자가 볼 수 없게 될 수도 있습니다. 비록 테스트를 거치지 않았다. – Masoud

+0

@masoud 'ActiveDocument.ActiveWindow.View.ShowHiddenText = True'가 추가되었습니다! 나는 그런 생각을하지 못했다. 나는 'Application.ScreenUpdating = False'에 대해서는 확신하지 못합니다. –

+0

https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 – Masoud

답변

1

숨겨진 텍스트를 선택하려면 화면에 표시되어야합니다. 따라서 코드에서이를 필요로합니다. 숨기기를 취소 할 필요는 없습니다.

사용자가이를 실행하는 동안 텍스트를 볼 수 없도록하려면 작업을 수행해야합니다. 그러나 테스트되지 않았습니다.

Application.ScreenUpdating = False 

코드의 끝에서 다시 켜야합니다.

Application.ScreenUpdating = True