2016-08-29 1 views
1

VBA를 사용하여 Word Template에 주석 텍스트의 서식을 지정하려고합니다. 다음 코드를 사용하여 간단한 텍스트를 추가 할 수 있습니다. 하지만Word VBA에서 메모 텍스트에 굵게, 기울임 꼴, 수퍼 스크립트 및 하위 스크립트를 추가하는 방법은 무엇입니까?

CommentText = "Test Bold: Bold Text & vbNewLine & Test Italic: Italic Text & vbNewLine & Test Bold Italic: Bold Italic Text & vbNewLine & Test Superscript: My BrandTM & vbNewLine & Test Subscript: H2O" 
Selection.Comments.Add Range:=Selection.Range 
With Selection 
     .TypeText (CommentText)      'Add comment text 
End With 

출력은 다음과 같은 이미지처럼해야 할 텍스트를 포맷하는 방법을 모른다 : 아래 enter image description here

답변

2

코드는 선택한 텍스트에 서식 코멘트를 추가합니다. Word 2007에서 테스트되었고 예상대로 작동합니다.

그런데 나중에 비슷한 것을해야 할 경우 매크로 기록을 시작하고 메모를 추가 한 다음 녹음을 중지하십시오. 결과 매크로 코드는 대부분의 방법으로 사용자를 확보해야합니다.

Public Sub AddComment() 

    Selection.Comments.Add Range:=Selection.Range 

    With Selection 
    .TypeParagraph 

    .TypeText Text:="Test Bold: Bold Text" 
    .MoveLeft Unit:=wdCharacter, Count:=9, Extend:=wdExtend 
    .Font.Bold = wdToggle 
    .EndKey Unit:=wdLine 
    .Font.Bold = wdToggle 

    .TypeParagraph 

    .TypeText Text:="Test Italic: Italic Text" 
    .MoveLeft Unit:=wdCharacter, Count:=11, Extend:=wdExtend 
    .Font.Italic = wdToggle 
    .EndKey Unit:=wdLine 
    .Font.Italic = wdToggle 

    .TypeParagraph 

    .TypeText Text:="Test Bold Italic: Bold Italic Text" 
    .MoveLeft Unit:=wdCharacter, Count:=16, Extend:=wdExtend 
    .Font.Bold = wdToggle 
    .Font.Italic = wdToggle 
    .EndKey Unit:=wdLine 
    .Font.Italic = wdToggle 
    .Font.Bold = wdToggle 

    .TypeParagraph 

    .TypeText Text:="Test Superscript: My BrandTM" 
    .MoveLeft Unit:=wdCharacter, Count:=2, Extend:=wdExtend 
    .Font.Superscript = True 
    .EndKey Unit:=wdLine 
    .Font.Superscript = False 

    .TypeParagraph 

    .TypeText Text:="Test Subscript: H20" 
    .MoveLeft Unit:=wdCharacter, Count:=1 
    .MoveLeft Unit:=wdCharacter, Count:=1, Extend:=wdExtend 
    .Font.Subscript = True 
    .EndKey Unit:=wdLine 
    .Font.Subscript = False 
    End With 

End Sub 
+0

이것은 정말 좋은 예입니다. 하지만 제 경우에는 순서가 바뀔 수 있습니다. 나는 200 개의 요소 배열을 가지고있다. 경우에 따라 Bold 만있을 수 있으며 경우에 따라 기울임 꼴 만있을 수 있습니다. 난 그냥 코드를 실행하는 몇 가지 경우와 루프를 관리 할 필요가 있다고 생각합니다. 고맙습니다. 대단히 유용 할 것입니다. –

+0

나는 여러분이 언급 한 형식의 각 비트를 수행하는 예제를 제공하고 있었고 실제로 코드를 그대로 사용하지 않을 것이라고 생각했습니다. 내 대답이 도움이된다면, 어디에 있어야하는지 알 수 있습니다. 감사. – MJH

+0

예! 고마워 친구. –