Wordにプログラムコード貼り付け
プログラムを書く場合、たいていのテキストエディタではifやforのようなプログラム上の予約語(キーワード)は強調表示してくれたり、コメントは色を変えて表示してくれたりしますが、Wordにプログラムコードを貼り付ける場合に、同じようなことをするにはどうすればよいのでしょ??
いろいろ検索してみたけれど、うまく実現する方法が見あたらなくて、次のようなWordマクロを作ってみました。
Sub myReplace(keyword)
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
Set myFont = New Font
myFont.Bold = True
myFont.Color = wdColorViolet
With Selection.Find
.Text = keyword
.Replacement.Text = keyword
.Replacement.Font = myFont
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = True
.MatchWholeWord = True
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = False
.MatchFuzzy = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
引数のkeywordで渡された文字列を、紫色の太字に変換するマクロです。myFontに好みのフォントスタイルを指定すれば置換後のスタイルを簡単に変えれます。
この関数に予約語を渡してあげればOK。
と、思ったのですが、この方法だとコメント部分の色を変換することができないではないですか。。Wordの置換で正規表現は使えないのかなぁ・・。とかなんとか、ドツボにはまって悩んでしまいました。
でも、結局の所、プログラムコードを色つきのHTMLに変換するツールは各種あるみたいなので、それを使ってそれをコピペしてしまえばOK!?