• ベストアンサー

Wordの置換がマクロ記録できない

Word文書を作成しています。 複数の単語の、色を変えたいと思い。 置換をマクロで記録をしてみたのですが、実行してもなにも起こらないのです。 これはなぜなのでしょうか? ちなみに置換しているのは色のみで、文字はそのままです。 また他にもマクロのような一括でできる機能などはないのでしょうか? よろしくおねがいいたします。

  • kkk311
  • お礼率61% (145/235)

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答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

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答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

  • Wordで複数の単語を一括置換するマクロはありませんか?

    Wordで複数の単語を一括置換するマクロはありませんか? 産業翻訳をしています。 現在は、自作の辞書を使ってテキスト文書内の登録単語を一括置換しています。 水野麻子さんのブログhttp://ameblo.jp/saglasie/entry-10519224366.htmlによると、 この作業をWordでできて、さらに置換部分をハイライト表示したり、置換した単語のリストが自動的に作成されるマクロがあるようなのですが、ネット上で検索しても見つかりません。 無料公開はされていないのでしょうか? こうした一括置換機能はどんなソフトにも標準装備されている、といった記述もネット上で見つかるのですが、どこにあるのかわかりません。 もし無料公開がないのでしたら、このマクロの電子版や本の購入も考えています。 このマクロの入手経路をご存知の方おられませんか?

  • Wordで複数の単語を一括置換するマクロはありませんか?

    Wordで複数の単語を一括置換するマクロはありませんか? 産業翻訳をしています。 現在は、テキスト文書に対し、手作業では不可能な大量の単語を、自作の辞書を使って一括置換しています。 水野麻子さんのブログhttp://ameblo.jp/saglasie/entry-10519224366.htmlによると、 この作業をWordでできて、さらに置換部分をハイライト表示したり、置換した単語のリストが自動的に作成されるマクロがあるようなのですが、ネット上で検索しても見つかりません。 無料公開はされていないのでしょうか? こうした一括置換機能はどんなソフトにも標準装備されている、といった記述もネット上で見つかるのですが、どこにあるのかわかりません。 簡易版なら同サイトで公開されていますが、ハイライト表示やリスト自動作成は付加されていません。 もし無料公開がないのでしたら、このマクロの電子版や本の購入も考えています。 このマクロの入手経路をご存知の方おられませんか?

  • ワードで複数の文字を一括・連続置換するマクロ

    ワード(Word)で複数の文字を一括・連続置換するマクロを作りたいのです。 次の回答を参考にしてマクロを作ってみました。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=994495 ところが、置換したい単語が100くらいになってきて扱いづらいので、 ワード(又はテキストやエクセルでも可)の置換文字のリストのファイルを参照して、同じように連続置換させたいのですが、どのような方法があるでしょうか? シェアウェアでも同様の機能をもつものがありますが、自由にカスタマイズできないので使えません。 (置換後の文字列に蛍光ペンをかけたいので)

  • WORDで一括置換

    WORDの文書内で複数の単語を一括置換したいのですがどうしたらよいですか?またmacでも同様にできますか?教えて下さい。

  • word2003の置換について

    以前、複数のword2003の複数のファイルに共通してある文字列を一括して置換する方法を質問させていただきましたが、ファイルの数が100近くあり、回答を下さった方には申し訳ありませんでしたが、うまくいきませんでした。 そこで、別の方法を考えましたが、知識がなく方法がわかりません。どなたかご教授ください。 word2003のファイルを開いた際に、自動的に特定の文字列を置換するマクロは組めないでしょうか? もしくは、上書き保存やファイルを閉じる際に自動的に文字列を置換するマクロはできないでしょうか? 欲を言えば、どのファイルを開いても、設定等を必要とせずに自動実行したいです。 特定の文字列というのは、すべてのファイルに共通している言葉1種類のみです。 例えば、「親」を「子」に置換できればいいのです。 よろしくお願いいたします。

  • マクロを使いワードの置換で特定の千種類の単語のフォント色を変えたい

    「マクロ」を使ってワードの「置換」機能で特定の千種類ほどの単語を一括で「フォント色」を「赤」に変えたいのですがどうすればよいでしょうか?

  • ワードのマクロについて

    お世話になります。 エクセルのマクロについてはここでよくアドバイスをもらっていますが、今回ワードでの処理について教えてください。 1つのフォルダにワード文書がたくさん入っています。 各ワード文書に対し以下の操作を自動化させたい。 1.すべてを選択(ctrl+A) 2.置換で「改行」をすべて削除   あいまい検索のチェックをはずした上で 検索する文字列 ^p  置換後の文字列は「空白」   すべて置換 3.置換で「スペース」をすべて削除   あいまい検索のチェックをはずした上で 検索する文字列 ^w  置換後の文字列は「空白」   すべて置換     4.すべてを選択 5.メニュー→書式→文字種の変換→全角にチェック→OK    ですべての文字を全角にする まとめると「すべての改行、スペースを削除し、全文字を全角に統一する」 この作業をフォルダ内の全ワード文書に対して一括で処理できないでしょうか? ちなみにワード文書は元々メモ帳(*.txt)で作成されていたものをリネームソフトで拡張子を*.docに変換したものです。そのためファイルを閉じるときに「書式なし形式で使用できない機能が含まれています」と聞いてきますが「はい」でOKです。 アドバイスおねがいします。

  • エクセルマクロでワードの置換マクロを作りたい

    エクセルで作成した置換シートを使用して、ワードの資料内の間違え語を一括置換えできるエクセルマクロを作りたいです。 置換えシートには、A列に間違え語、B列に正しい語が入力してあります。 色々やってみたのですが、うまくいきません。 分かる方、教えていただけませんか?

  • ワードの置換

    ワードで作成されれ全文MS明朝体の長文の中に ところどころ文字色が青のところが有ります。 この青の文字を、全てMSゴシック体に一括置換できる方法は有りますか?変換後の色も青のままとします。

  • ワード内の色がついた文字をマクロ(VBA)で削除したい

    お世話になります。 色指定で置換処理を実行するマクロを作成したいと思っています。 置換¥オプション¥書式¥色指定で空白と置換 の作業を 「マクロを記録」の状態で実行したのですが、マクロに記録されません。。。 VBAに追記する形、どのような形でもいいのでマクロで色指定も含めた置換方法を教えていただけないでしょうか? 何卒よろしくお願いします。

専門家に質問してみよう