- ベストアンサー
WORDで書式などを利用して置換するマクロをつくりたいです
WORD2000で書式などをキーにして置換するマクロをつくりたいです。 例)太字の文字列すべてを『♂』『♀』で囲む これをVBAで表記するにはどう書いたらよいでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
以下のマクロでいかがでしょう?カーソル以降の太字は『♂』『♀』で囲まれます。 Sub BOLDWORD_SANDWICH() With Selection With .Find .Font.Bold = True .Replacement.Text = "♂^&♀" .Forward = True .Wrap = wdFindContinue .Execute End With If .Find.Forward = True Then .Collapse Direction:=wdCollapseStart Else .Collapse Direction:=wdCollapseEnd End If .Find.Execute Replace:=wdReplaceAll End With End Sub Win2000+Word2000で動作確認
その他の回答 (1)
- TTak
- ベストアンサー率52% (206/389)
> ちなみに文字に網かけがしてある部分をキーにして置換 蛍光ペンは検索機能が使えるのですが、網掛け部分は使えないようで。よって、Shadingを一個ずつチェックするしかなさそうです。これだと、文書の文字数が増えるほど処理が遅くなります。参考までに。 Sub BOLDWORD_SANDWICH2() Dim myTexture Dim i As Integer For i = 1 To ActiveDocument.Characters.Count myTexture = Selection.Font.Shading.Texture Selection.MoveRight If myTexture <> Selection.Font.Shading.Texture Then If Selection.Font.Shading.Texture <> 0 Then Selection.TypeText Text:="♂" Else Selection.TypeText Text:="♀" End If End If Next i End Sub
お礼
ありがとうございました。 私のしたいことがそのまま出来ました!
補足
ありがとうございました。 希望通り『♂』『♀』がつきました。 ちなみに文字に網かけがしてある部分をキーにして置換(同じく記号ではさむ)はできますか? もしご存知であれば教えてください。