概要
Wordで、山かっこ<>を<>に変換するマクロです。
テキストエディタで、マクロを組むのが一般的なのでしょうが、Wordマクロにして見ました。htmlを記述する際に役立ちます。
山かっこ<>を<>に変換するマクロ
Sub カギカッコ変換()
'複数の検索語を、対応する置換語に一括置換します。
Dim sWrds() As Variant, rWrds() As Variant
Dim Num As Integer
'検索文字列
sWrds = Array("<", ">")
'置換文字列
rWrds = Array("<", ">")
With ActiveDocument.Content.Find
'LBound関数は与えられた配列のインディクスの最小値を返す(ここでは0)
'UBound関数は与えられた配列のインディクスの最大値を返す(ここでは1)
For Num = LBound(sWrds) To UBound(sWrds)
.Text = sWrds(Num)
.Replacement.Text = rWrds(Num)
.Execute Replace:=wdReplaceAll
Next Num
End With
End Sub
このコードでは、<>しかチェックしていません。
逆変換:<>をに山かっこ<>変換するマクロ
Sub カギカッコ逆変換()
'複数の検索語を、対応する置換語に一括置換します。
Dim sWrds() As Variant, rWrds() As Variant
Dim Num As Integer
'検索文字列
sWrds = Array("<", ">")
'置換文字列
rWrds = Array("<", ">")
With ActiveDocument.Content.Find
'LBound関数は与えられた配列のインディクスの最小値を返す(ここでは0)
'UBound関数は与えられた配列のインディクスの最大値を返す(ここでは1)
For Num = LBound(sWrds) To UBound(sWrds)
.Text = sWrds(Num)
.Replacement.Text = rWrds(Num)
.Execute Replace:=wdReplaceAll
Next Num
End With
End Sub
もとに戻すマクロです。マクロは、Undoで戻せないので、もとに戻すマクロも考えておく必要があります。
単純に入れ替えてますので、確実にもとに戻るとは限りません。
関連書籍
Wordのバージョンによる注意点
Word 2007から以降のWordとそれ以前では、VBAの記述の仕方が異なる機能が多いので、
古いWord VBAを、Word 2007以降で使用する場合、基本的に変更が必要になると思ってください。