|
CAN さん、こんにちは。
>vbaを使ってwordの文章中の決まった文字を囲い文字にするにはどうしたらよいのでしょうか?
>例えば『あいうえおかきくけこ』の『あ』だけ○で囲んだAに、『い』だけ○で囲んだ『B』したいです。
>よろしくお願いいたします。
あをA、いをBに置換して拡張書式の囲み文字を設定しました。
ちなみに、↓こういう文書でテストしました。
あいうえおかきくけこ
BBAABB
あきくけこ
Sub まとめて置き換える()
Dim s1 As String, s2 As String
'2パターン
For NN = 1 To 2
Select Case NN
Case 1: s1 = "あ": s2 = "A"
Case 2: s1 = "い": s2 = "B"
End Select
With ActiveDocument.Range.Find
Do
'文字を探す s1
resp = .Execute(FindText:=s1, Wrap:=wdFindContinue, Replace:=wdReplaceOne)
If resp = True Then
'○で囲んだ新しい文字 s2
.Parent.ModifyEnclosure Style:=wdEncloseStyleSmall, _
Symbol:=wdEnclosureCircle, EnclosedText:=s2
Else
'置き換える文字がなくなった
Exit Do
End If
Loop
End With
Next
End Sub
|
|