
No.1ベストアンサー
- 回答日時:
こんばんは。
複数の単語を変換する場合は、ループにしてあげればよいのですが、以下は、文字の色を換えるマクロです。
>これはなぜなのでしょうか?
記録マクロではそのサポートがないからだけです。しょせん、記録マクロの限界です。
Sub FormatReplacing()
With ActiveDocument.Content.Find
.ClearFormatting
.Text = "あ"
.Wrap = wdFindContinue
.Font.ColorIndex = wdAuto '黒(自動)
With .Replacement
.ClearFormatting
.Text = "あ"
.Font.ColorIndex = wdRed '赤
End With
.Execute Replace:=wdReplaceAll
End With
End Sub
No.2
- 回答日時:
以下は生半可な知識ですのでお許しを。
私はワード2002です。この書式に関連した検索置換の辺はバージョンで差が大きいかも。
(1)マクロの記録では文字のフォントの指定のコードは出てこない。下記コード参照。不思議だが。
編集ー置換のダイアログボックスの、検索と置換の文字をそれぞれ
の機会に別に範囲指定して、書式ボタンをクリックすると、
検索の文字と置換後の文字の書式(をフオントの色)を指定できるから、そこで指定しておく。そして置換ボタンは、押さないで置く。
下記(2)の後マクロで実行する。
(2)文字を検索文字と置換後文字を同じにして(置換後の文字の書式だけ変えても)、マクロを実行しても効果が出なかった。それで一旦仮に(他に出現しないような)差しさわりのない別の文字に一旦置換で変えて、その後もう一度元に戻す置換をマクロで実行する。
そのとき、置換ダイアロウグの置換後の文字の(元の文字である)フォントの色を望みのものに設定しておく。
検索する文字列について、文字列+書式(フォント色)
の両者が合わないと、マクロなりで実行した置換の効果は得られない
から(当然だろうが)注意のこと。
ーー
以上だと、なんとも奇妙な点なのだが、他に正しい採るべき方法があるかもしれないのですが、参考までによろしく。
参考にマクロの記録結果はたぶん質問者と同じで
Sub Macro54()
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "海"
.Replacement.Text = "道"
.Forward = True
.Wrap = wdFindAsk
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = False
.MatchFuzzy = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
組み込みの置換ダイアロウグをコードで出し各項目(例えば書式ボタンクリック以下)セットもパラメータで与えられると思うが、知識が十分でないので略。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Visual Basic(VBA) Excel VBA 教えてください。 VBA初心者です。 詳しい方がいましたら教えてください。 下記 3 2023/04/25 11:22
- その他(IT・Webサービス) 少し複雑なテキスト置換がしたいです。 2 2022/10/13 14:42
- Excel(エクセル) 現在のセルの文字列を右隣のセルの名前にするマクロをつくりたい 4 2023/01/12 09:01
- Excel(エクセル) Excelで校閲をする方法はあるでしょうか(取扱説明書への掲載禁止用語の確認) 3 2022/06/11 22:51
- フリーソフト 文章の単語を一括で置換する方法やツール 3 2022/07/28 06:58
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- その他(プログラミング・Web制作) テキストエディタで複数行にわたる文字列の行頭に番号を振る方法 4 2023/03/11 12:57
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Word文書、取り消し線部分の一...
-
エクセル リンクを貼ったブッ...
-
「置換」ダイアログで上書きを...
-
ワードで半角英数の文字だけ選...
-
word文書内のピンク色の文字を...
-
ワードで赤字のみを削除する方法
-
賞状の文字(フォント・大きさ...
-
Word相互参照の文字を一括で変...
-
ワードの表への入力について
-
Wordで返信府号を一気に取り除...
-
word である文字をすべてイタリ...
-
Wordでカッコで括った文字を一...
-
【Excel】 置換機能を使って数...
-
同じ文字
-
エクセルでシートにある赤文字...
-
Wordデータから,特定の単語を...
-
エクセルシートへ検索ダイアロ...
-
Excel2000ですが検索置換の問題...
-
ワードのフィールドの解除を一...
-
ワードである言葉を打つと自動...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Word文書、取り消し線部分の一...
-
箇条書きのアタマに一括で「・...
-
エクセルでシートにある赤文字...
-
Wordでカッコで括った文字を一...
-
「WORD」での作業 日本語・英...
-
ワードの表の中の値の表示形式...
-
ワードで赤字のみを削除する方法
-
ワードである言葉を打つと自動...
-
excelマクロ ボタンを押して文...
-
ワードの表への入力について
-
ワードで太字になっているとこ...
-
word文書内のピンク色の文字を...
-
エクセルで、コンマをピリオド...
-
Word相互参照の文字を一括で変...
-
ワードで半角英数の文字だけ選...
-
Excelの表中,数字の「1」をす...
-
同じ文字
-
MSワード、エクセルの文章にマ...
-
word である文字をすべてイタリ...
-
画像にあるように句読点「、」...
おすすめ情報