2017-04-26 1 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

非表示のテキストは、選択するために画面に表示する必要があります。だからあなたのコードでこれが必要です。それらを非表示にする必要はありません。

ActiveDocument.ActiveWindow.View.ShowHiddenText = True 

実行中にテキストが表示されないようにする場合は、ジョブを実行してください。しかし、それはテストされていません。

Application.ScreenUpdating = False 

コードの最後にもう一度オンにしてください。

Application.ScreenUpdating = True 
関連する問題