2016-08-09 7 views
0

私の最初の挑戦は、単語の文書に下線付きのヘッダーを自動化することでした。Wordマクロが正確に文書の半分をシャットダウン

Sub Underline_Header() 

Dim numOfParagraphs As Integer 
numOfParagraphs = ActiveDocument.BuiltInDocumentProperties("NUMBER OF PARAGRAPHS") 
Selection.HomeKey Unit:=wdStory 
For x1 = 1 To numOfParagraphs 

Selection.Paragraphs(1).Range.Select 

char_count = Len(Selection.Paragraphs(1).Range) 

If char_count < 50 Then 
Selection.Font.Underline = True 
End If 

Selection.MoveDown Unit:=wdParagraph, Count:=1 

Next x1 


End Sub 

をしかし、それは私が持っているし、ページで2

を停止し、ドキュメントが20ページであれば10場合、マクロは10ページで停止し、5。4で停止判明:このコードは、働いていましたUnit:=wdStoryからUnit:=wdDocumentにコードを変更しようとしましたが、それは解決策ではありませんでした。私もコードにSelection.EndKey Unit:=wdStoryを追加しようとしましたが、私は同じ結果を得ます。

答えて

2

あなたは

Sub Underline_Headers() 
    Dim p As Paragraph 
    For Each p in ActiveDocument.Paragraphs 
     If Len(p.Range.Text) < 50 Then 
      p.Range.Font.Underline = True 
     End If 
    Next p 
End Sub 
のようなものにそれを簡素化することができます
関連する問題