• ベストアンサー

プログラムのコード(テキスト)をWordでカラー表示させたい

VBのプログラム(コードのテキスト)を Wordにコピペして、カラー表示で印刷したいのです。 秀丸の強調表示でカラー表示ができますが、 非常に不便なためWordでカラー表示をしたいです。 これを実現できるマクロやソフトはあるのでしょうか? テキストの更新毎や手動実行で、マクロを動かして、 特定のコードの文字列(sub,if,endなど)と、'(カンマ)以降のテキスト表示 の色を変えられればいいのですが。

質問者が選んだベストアンサー

  • ベストアンサー
  • n_na_tto
  • ベストアンサー率70% (75/107)
回答No.1

Word VBAだと.. Sub コード置換() Dim myArr As Variant Dim myRng As Range Dim i As Integer myArr = Array("Sub", "End", "Dim", "As", "Set", _  "If", "With", "For", "Next", "Do", "Loop", "While", "Until", _  "Select", "Case", "Public", "Const", "Exit") '例です Set myRng = ActiveDocument.Range '選択範囲だけならSelection.Range  With myRng.Find   .ClearFormatting   .Text = "'*^13"   .Forward = True   .Wrap = wdFindContinue '選択範囲だけならwdFindStop   .Format = True   .MatchCase = True   .MatchWholeWord = True   .MatchByte = True   .MatchAllWordForms = False   .MatchSoundsLike = False   .MatchWildcards = True   .MatchFuzzy = False   With .Replacement    .ClearFormatting    .Text = ""    .Font.Color = wdColorGreen   End With   .Execute Replace:=wdReplaceAll  End With For i = LBound(myArr) To UBound(myArr)  With myRng.Find   .ClearFormatting   .Text = myArr(i)   .MatchWildcards = False   With .Replacement    .ClearFormatting    .Text = ""    .Font.Color = wdColorBlue   End With   .Execute Replace:=wdReplaceAll  End With Next i End Sub

emson100
質問者

お礼

即実行できるプログラムを誠にありがとうございます。 完璧です!感動のあまり鳥肌が立ちました。

関連するQ&A

専門家に質問してみよう