2016-10-24 1 views
1

Word에서 내 첫 번째 (그리고 잘하면 마지막) 매크로 작업을 시도하고 막 다른 골목에 왔습니다. Word와 Word Online간에 많은 작업을하고 있으므로 서식을 변경하는 경향이 있으므로 수동으로 다시 조정해야하는 번거 로움을 덜어주는 매크로를 만들어야합니다.VBA-Word : 여러 단락 서식 적용

제 문제는 사용 된 글꼴을 기준으로 본문 텍스트에 다른 간격을 두어야한다는 것입니다. (Arial은 6보다 먼저, Courier New는 0보다 먼저 코드 간격을 사용합니다.) 매크로 레코더 및 바꾸기 기능을 사용하여 코드를 만들려고했지만 레코더가 필자에게 필요한 글꼴을 지정하지 않는 일반 코드를 제공하므로 (둘 다 선택 함) 둘 다 실행하면 Arial 서식으로 끝납니다 둘 다. 다음은 Courier New에서 얻은 코드입니다.

Sub FormatBodyCode() 

Application.ScreenUpdating = False 

Selection.Find.ClearFormatting 
Selection.Find.Replacement.ClearFormatting 
With Selection.Find.Replacement.ParagraphFormat 
    .SpaceBefore = 0 
    .SpaceBeforeAuto = False 
    .SpaceAfter = 0 
    .SpaceAfterAuto = False 
    .LineSpacingRule = wdLineSpaceMultiple 
    .LineSpacing = LinesToPoints(1.15) 
    .Alignment = wdAlignParagraphLeft 
    .OutlineLevel = wdOutlineLevelBodyText 
    .LineUnitBefore = 0 
    .LineUnitAfter = 0 
End With 
With Selection.Find 
    .Text = "" 
    .Replacement.Text = "" 
    .Forward = True 
    .Wrap = wdFindContinue 
    .Format = True 
    .MatchCase = False 
    .MatchWholeWord = False 
    .MatchWildcards = False 
    .MatchSoundsLike = False 
    .MatchAllWordForms = False 
End With 
Selection.Find.Execute Replace:=wdReplaceAll 

Application.ScreenUpdating = True 
End Sub 

어떻게 작동하게할까요?

... 
With Selection.Find 
    ... 
    .Format = True 
    .Font.Name = "Courier New" ' <== Add this - Or whatever font you want 
    ... 

여러 글꼴을 할 수있는 가장 쉬운 방법은 다른 이름으로 다른 함수로 전체 기능을 복사하고 글꼴 이름을 변경하는 것입니다

+0

희망적인 마지막이 아닐 것입니다! 사이트에 오신 것을 환영합니다! 품질 좋은 답변을 얻을 수있는 질문에 대한 자세한 내용은 [둘러보기] (https://stackoverflow.com/tour)를 확인하십시오. – cxw

답변

1

한 빠른 코드 변경은 하나의 글꼴에 대한 검색을 제한한다 다른 기능의 간격.

+0

그게 간단했다, 응? 그래도 왜 레코더에 포함되지 않았는지 이해할 수 없습니다. –