#contents

*Word 関連情報 [#ca903aa6]
**サンプルコード [#jfe828fb]
***Wordで使用しているフォント名を文字単位で出力するマクロ [#z754764d]

 ' デバッグログの出力先
 Const g_strLogFile = "C:\DebugPrint.Log"
 
 ' 段落単位でフォント名を出力
 Sub ShowParaFontName()
     Dim para
     For Each para In ActiveDocument.Paragraphs
         DebugPrint "[" & para.Font.Name & "]" & para.Text
     Next
 End Sub
 
 ' 単語単位でフォント名を出力
 Sub ShowWordFontName()
     Dim para
     For Each para In ActiveDocument.Paragraphs
         Dim word
         For Each word In para.Range.Words
             DebugPrint "[" & word.Font.Name & "]" & word.Text
         Next
     Next
 End Sub
 
 ' 文字単位でフォント名を出力
 Sub ShowCharFontName()
     Dim para
     For Each para In ActiveDocument.Paragraphs
         Dim char
         For Each char In para.Range.Characters
             DebugPrint "[" & char.Font.Name & "]" & char.Text
         Next
     Next
 End Sub
 
 ' 文字単位でフォント名と全角・半角判別情報を出力
 Sub ShowCharZenHanFontName()
     Dim para
     For Each para In ActiveDocument.Paragraphs
         Dim char
         For Each char In para.Range.Characters
             If Asc(char.Text) >= 0 And Asc(char.Text) <= 255 Then
                 DebugPrint "[" & char.Font.Name & "]" & "[半]" & char.Text
             Else
                 DebugPrint "[" & char.Font.Name & "]" & "[全]" & char.Text
             End If
         Next
     Next
 End Sub
 
 ' デバッグ文字列の出力
 Function DebugPrint(ByVal strData As String)
 '    Debug.Print strData
     Open g_strLogFile For Append As #1
     Print #1, strData
     Close #1
 End Function
 
 ' ログファイルのクリア用
 Function TruncateLogFile()
     Open g_strLogFile For Output As #1
     Close #1
 End Function

-対象ファイル(test.doc)
#ref(word_sample_20040721.jpg);

-実行結果(プロシージャ:ShowCharZenHanFontName() / 結果:DebugPrint.log )
 [Century][半]a
 [Century][半]b
 [Century][半]c
 [Century][半]d
 [Century][半]e
 [Century][半]f
 [Century][半]g
 [Century][半]h
 [Century][半]i
 [Century][半]j
 [Century][半]k
 [Century][半]l
 [Century][半]m
 [Century][半]n
 [Century][半]o
 [Century][半]p
 [Century][半]q
 [Century][半]r
 [Century][半]s
 [Century][半]t
 [Century][半]u
 [Century][半]v
 [Century][半]w
 [Century][半]x
 [Century][半]y
 [Century][半]z
 [Century][半]
 
 [Century][半]A
 [Century][半]B
 [Century][半]C
 [Century][半]D
 [Century][半]E
 [Century][半]F
 [Century][半]G
 [Century][半]H
 [Century][半]I
 [Century][半]J
 [Century][半]K
 [Century][半]L
 [Century][半]M
 [Century][半]N
 [Century][半]O
 [Century][半]P
 [Century][半]Q
 [Century][半]R
 [Century][半]S
 [Century][半]T
 [Century][半]U
 [Century][半]V
 [Century][半]W
 [Century][半]X
 [Century][半]Y
 [Century][半]Z
 [Century][半]
 
 [MS 明朝][全]あ
 [MS 明朝][全]い
 [MS 明朝][全]う
 [MS 明朝][全]え
 [MS 明朝][全]お
 [MS ゴシック][全]1
 [MS ゴシック][全]2
 [MS ゴシック][全]3
 [MS ゴシック][全]4
 [MS ゴシック][全]5
 [Century][半]1
 [Century][半]2
 [Century][半]3
 [Century][半]4
 [Century][半]5
 [Century][半]
 
 [MS 明朝][全]あ
 [MS 明朝][全]い
 [MS 明朝][全]う
 [MS 明朝][全]え
 [MS 明朝][全]お
 [MS 明朝][全]1
 [MS 明朝][全]2
 [MS 明朝][全]3
 [MS 明朝][全]4
 [MS 明朝][全]5
 [Century][半]1
 [Century][半]2
 [Century][半]3
 [Century][半]4
 [Century][半]5
 [Century][半]
 
 [Century][半]

-はてな
--http://www.hatena.ne.jp/1090284941

#comment


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS