• ベストアンサー
  • 困ってます

MS Word 2002で特定のフォントを検索して置換する方法

MS Word 2002で特定のフォントを検索して別のフォントに置換する方法 をどなたかご存知ですか? 例えば以下のような文字列があるとします。 あいうえお テスト 試験 かきくけこ 123 456 abc def GHI JKL この文字列のうち、全角の文字(英数字を含む。)は、「かきくけこ」を除き、全て「MS 明朝」です。「かきくけこ」の部分は、「MSゴシック」です。半角の文字は全て「Century」です。 <その1> 上記の文字列の内、「MS 明朝」の部分のみ全て強調(ハイライト)したいとします。 この場合、私が行なっている操作は以下ですが、うまく行かず「MS 明朝」の部分だけではなく、全ての文字列(Century部分も含む。)がハイライトされてしまいます。 <私が行なっている操作> メニューバーの「編集」→「検索」→「検索と置換」画面で「検索」タブを選択し「見つかったすべての項目を強調表示する」をチェックします。その後「検索と置換」画面の「オプション」ボタンをクリックし、検索オプションの「ワイルドカードを使用する」にチェックを入れます。(その他の検索オプションは非選択)。そして、「検索する文字列」に「?」と入力し、「検索と置換」画面の一番下にある検索項目の「書式」ボタンをクリックし「フォント」を選択します。「検索する文字」画面で「フォント」タブを選択し、「日本語用のフォント」入力欄で「MS 明朝」を選択します(英数字用のフォント入力欄を含め、その他の入力欄は空欄。「文字飾り」チェックボックス項目は、グレーアウトの状態)。この状態で「検索する文字」画面のOKボタンをクリックして閉じ、「検索と置換」画面で「すべて検索」ボタンをクリックしています。 どのようにすれば、文字列内の「MS 明朝」の部分のみ全て強調(ハイライト)できるのでしょうか? <その2> 上記の操作がうまく行った場合(「MS 明朝」の部分のみ全て強調(ハイライト)できた場合)、その「MS 明朝」の部分を全て他のフォント(例:「MS ゴシック」)にするには、どのようにすればよいのでしょう? この操作に関する情報が記載されたサイトのURL等がありましたら、併せて教えて下さい。 よろしくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数4
  • 閲覧数1206
  • ありがとう数3

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

  • ベストアンサー
  • 回答No.2

Wordの場合、テキストには[英数字用フォント]と[日本語用フォント]の 両方が適用されていますので[ MS 明朝]であっても[英数字用フォント] として[ Century ]が設定されています。 このことを理解して[検索]または[置換]で[ MS 明朝]の全角文字を対象 にしたいのなら半角英数字を指定する範囲から除けば可能かと思います。 ワイルドカードを有効にして以下の設定をします。 検索する文字列 : [!\!-~ ]  ( [書式]ボタンで[フォント]を[ MS 明朝]を指定 ) [見つかったすべての項目を強調表示する]にチェックをつけてフォント 指定をすれば[ MS ゴシック]でも他のフォントでも可能です。 [置換]で対応したいのなら[置換する文字列]に何も入れないでフォント の指定をすることで置換できると思います。 今回の場合は[検索する文字列]で否定を利用していますので、検索する 範囲を「!~~」までと半角スペースで指定していますが、他の半角記号 なども含む場合は[記号と特殊文字]ダイアログでからフォントの一覧で [ Century ]を指定して、使われている範囲を調べてコードの最後を否定 の最後に指定します。

共感・感謝の気持ちを伝えよう!

質問者からの補足

enunokokoroさん ご回答、ありがとうございました。 enunokokoroさんのご説明で、だいたい分かりました。以下に、多少、疑問が残る部分を記載していますので、ご回答いただければ幸いです。 補足質問1: >( [書式]ボタンで[フォント]を[ MS 明朝]を指定 ) この[ MS 明朝]を指定するのは「日本語用のフォント」入力欄のみですか(「英数字用のフォント」入力欄は、空欄ですか又は何か別のフォントの値を選択しますか?)?それとも、「日本語用のフォント」入力欄及び「英数字用のフォント」入力欄の両方で[ MS 明朝]を指定するのでしょうか? 補足質問2: >他の半角記号なども含む場合は[記号と特殊文字]ダイアログでからフォン >トの一覧で[ Century ]を指定して、使われている範囲を調べてコードの最 >後を否定の最後に指定します。 なぜ[記号と特殊文字]ダイアログからフォントの一覧で[ Century ]を指定するのかわかりませんでした。例えば、 [ Century ] 以外(例:[MS 明朝])のフォントでも「半角英字」(なぜか「半角英数字」ではなく「半角英字」と[記号と特殊文字]ダイアログのフォントの「種類」選択欄に表示されている。バグかな?)部分の並びは[ Century ]と同じでした。[記号と特殊文字]ダイアログからフォントの一覧で[ Century ]を指定する特別な理由があるのでしょうか? 応用質問: 今回の私が例とした文字列では、半角の文字は全て「Century」でしたが、半角文字にも「MS 明朝」フォントが混入しており(例えば、私が例に使用している文字列の「456」(半角英字)及び「abc」(半角英字)のフォントが「MS 明朝」だった場合)、半角文字において「Century」“以外”の部分のみ全て強調(ハイライト)したいとし場合、どのようにすればよいのでしょうか? enunokokoroさんから教えて頂いた事を参考にすると、検索する文字列 の値が[\!-~ ](半角文字のみ指定)となるのは推測できます。しかし、どうやって「Century」“以外”の部分を指定できるのか分かりません。 よろしくお願いします。

その他の回答 (3)

  • 回答No.4

No.2です。 応用質問の場合の検索方法でしたね。確かにNo.3のアドバイスの内容に は書きませんでした。私の知識だけでは一度に半角の[ MS 明朝]を含む 検索方法がわからなかったというのが、あえて避けたアドバイスの理由 です。 前の回答にも書きましたが、スタイルとしてフォントが登録されたもの ならば簡単に検索できるのですが、[標準]スタイルでフォント名が違う 場合には、どこかを基準にするしかないので前のアドバイスぐらいしか できなかったのです。 半角の[ MS 明朝]を含んで、かつ全角の半角の[ MS 明朝]のフォント名 が指定されたものを検索する方法はわかりませんので、別々に検索対象 にするしかないと個人的に思っています。 マクロ(VBA)を使えば検索条件に複数のものを指定できますが、一般の 機能だけでは無理だと思います。どうしても一度で検索や置換をしたい のなら、VBAとして質問しなおしたほうがよいと思います。 私は、今回の質問(補足を除く)にある > 半角の文字は全て「Century」 をもとに基本的スタンスでの回答をしていますので、追加質問について は他の回答者の参加を待つか、新規質問をしてください。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

enunokokoroさん ご回答、ありがとうございました。 了解しました。

  • 回答No.3

No.2です 補足質問1:への回答 [英数字用フォント]も指定したほうがよいと思います。 今回の質問では、初期設定のままのWordで、基本的な[標準]スタイルが 使われている範囲を検索すると推測して、他の書式(スタイル名指定なし) は[ MS ゴシック]だけということを前提に回答しています。 スタイルで管理しているのならよいのですが、一般的にはスタイル名を 適用していることはないので、一般的な設定をしているのなら前の回答 にあるような手順で十分対応できるのですが、本来は[英数字用フォント] も指定しておくことが望ましいです。 例えば、[英数字用フォント]の指定が[日本語用フォント]と同じにして いる場合もありますので、この場合は個々に指定をしないとならないと 検索対象に含まれてしまうからですね。 補足質問2:への回答 [記号と特殊文字]でフォント名を指定しているのは、フォントによって コードの範囲が違うからです。[ MS 明朝]のフォント内でも半角英数字 があることは理解されていると思いますが、半角として認識される記号 の範囲が[ Century ]よりも広いために、使われないコードも検索対象に なることと、その文字を挿入してコピーして検索へと貼り付けをしても コードとして意味がない場合もありますので。 このことを前の回答に載せたのは深い意味があるわけではなく、記号が どこまで[ Century ]で使われているのかを確認させることで個々の記号 を本文内で調べる手間が多少は省けると思ったからです。 私は専門的な知識を持っているわけではないので、検索する文字列への 指定の範囲を具体的に知っているわけではないことから、過去ログなど や一般的な書籍で紹介されている方法を提示しただけです。 補足質問1や補足質問2でも共通することは、スタイルでの管理をしてる 場合ならスタイル名を指定するだけで済むのですが、スタイルでの管理 がされていない一般的な文書では検索や置換を指定するときでは、記号 などを調べるときにはある程度手間をかけるしかないのです。 応用質問:への回答 補足質問と関連しますが、[日本語用フォント]と[英数字用フォント]の 両方が必ず適用されているのがWordのスタイルだと思って、[ Century ] であったとしても、検索対象の文字に適用されているスタイルの日本語 になったときの[日本語用フォント]も指定する必要があります。 [ Century ]にたいして[ MS ゴシック]が適用されていることもあるので 必ず指定する癖をつけたほうが確実です。 作業ウィンドウで[書式の詳細設定]で選択してある文字列のフォントの 指定が確認できますので迷ったときには利用してはいかが。

共感・感謝の気持ちを伝えよう!

質問者からの補足

enunokokoroさん ご回答、ありがとうございました。 enunokokoroさんから頂いたご回答のうち、私の応用質問に対する回答のみ理解できませんでした。 >作業ウィンドウで[書式の詳細設定]で選択してある文字列のフォントの >指定が確認できますので迷ったときには利用してはいかが。 上記で選択文字列のフォント指定を確認できるのは、こちらでも確認できました。しかし、どうやって半角文字において(英)「Century」“以外”のフォントが指定してある部分のみをハイライトできるのか分かりません(“以外”がポイントです。)。[日本語用フォント]と[英数字用フォント]の両方を指定(検索する文字列 の値は、[\!-~ ])したとしても、それらのフォントが使用してある文字がハイライト(検索)されてしまい、指定フォント以外のフォントが使用してある文字をハイライトするにはどうしたらよいのか分かりません。 enunokokoroさんは、ご存知でしょうか? よろしくお願いします。

  • 回答No.1
  • tom04
  • ベストアンサー率49% (2537/5117)

こんばんは! 当方Word2003ですが、 操作方法は似通っているとおもいますので、回答させていただきます。 ワイルドカードのチェックを外して 「検索する文字列」「置換後の文字列」両方とも空白のままで 書式のフォントだけ指定すればOKだと思います。 尚、「検索する文字列」の「あいまい検索」にチェックを入れて、 オプションをクリック → 大文字/小文字[A/a]のチェックを外して 置換すれば希望どおりにならないでしょうか? ただし、Centuryの文字強調はどうにもならないみたいですが、 置換はされないと思います。 以上、もしまともな回答になっていなかったら、 軽く読み流してください。m(__)m

共感・感謝の気持ちを伝えよう!

質問者からの補足

tom04さん ご回答、ありがとうございました。 tom04さんの方法を試しましたが、「検索する文字列」「置換後の文字列」両方とも空白のままでは、置換ボタンを押すごとに文字が削除されてしまいます。そのため、今回の問題の解決方法にはなりませんでした。 ご意見を頂いたことには、感謝します。

関連するQ&A

  • Word2003の検索・置換について

    検索・置換のダイアログボックスを使い、 書式がフォントやスタイル(太字・斜体) が設定されている文字を、 太字に置換えようと思い、 検索する文字列に設定し、 置換後の文字列をクリックし、置換ようとしたところ、 なぜか、検索する文字列の書式に設定がなってしまいました 何回か試していると、ちゃんと設定がなるときもあるのですが、 ならないときもあります。 どうすれば確実に設定を一回でできるでしょうか?

  • Wordの置換でフォントが変わらない

    Word2007で文字列を置換するさいに、「置換後の文字列」に書式を設定しても反映されません。どうか、反映される方法を教えてください。 » «という引用符を„ “という引用符に置換すると、MS明朝にしかなりません。「置換後の文字列」に「オプション」→「書式」→「フォント」からTimes New Romanの書式を設定しているのに、これが反映されません。 元の» «はTimes New Romanです。 本文は日本語=MS明朝、英数字=Times New Romanのスタイルにしています。 „ “はTimes New Romanでなければならないし、» «が何百とあるのでぜひ一括置換しなければなりません。

  • Wordで、a) を (A) に置換

    ワイルドカードを使用し、文書中の a) を (A) に置換したいのですが、思うようにいきません。 以下で試しているのですが、 検索する文字列: ([!\(])([a-d]\)) 置換後の文字列: \1(\2 これだと a)( に置換されてしまいます。 ご助言いただけたら、大変助かります。

  • MS-Wordで改行を検索・置換する方法

    MS-Wordで改行を検索・置換する方法をご存知の方があれば教えてください。 以前(2010年)のご回答に、 「検索と置換画面の「置換」タブ画面で [オプション] を選択し、右下にある「あいまい検索」のチェックを外します。 検索する文字列にカーソルを置いて、[特殊文字] ボタン → 段落記号(P) を選択すると、検索する文字列に 「^p」が入力されます。(直接キー入力してもOKです)」がありました。 しかし、私が使っている、Word 2010には「段落記号(P) 」がなく直接「^p」を指定してもエラーになり、代わりに改行らしい「任意指定の改行(O)」「任意指定の行区切り(L)」では、Word文書の改行マークにヒットしません。 よろしくお願いします。

  • Word2002でMS明朝ではないフォントを常に書きたい

    SimSunというフォントを常に書きたいのですが、設定の仕方がうまく行っていないのか、MS明朝に自動的になってしまいます。 ヘルプを参照しましたが、具体的な内容は書いてありませんでした。今は、変更したい文字列を反転させて、画面左上のフォントのウィンドウでフォントを選択し、変更しています。 初心者なので、どうしたら良いか、分かりやすく具体的に教えていただけると幸いです。

  • Wordで置換する場合に、テキストボックスのあるときの検索順

    Word2000です。 Wordの文章の最初のページにはテキストボックスがあります。 (最初のページというのは深い意味はありません。) テキストボックスの中にも文が入っています。 テキストボックス内も地の文(テキストボックスに入っていない通常の文)も ある文字列(例えば「あいうえお」)を別の文字列(「かきくけこ」)に置き換えたいのです。 編集-置換 の機能を使えばよいのですが、 その際、「すべて置換」を使わずにひとつひとつ確かめながら置換しようとすると、 まず地の文を検索していき、最後のページに達してから、 最初のページに戻って、そのテキストボックスの中を検索していきます。 できれば、 検索の順番を、テキストボックスの中の検索を最後にするのではなくて、 上から順番にしていってほしい (最初のページのテキストボックスの中の検索は、次のページの地の文の検索よりも先にしてほしい) のですが、そういうわけにはいかないのでしょうか。

  • ヒットする初回のみ置換する方法

    あいうえおかきくけこあいうえおあいうえお という文字列があった時、 初回の「あいうえお」のみ空に置換して かきくけこあいうえおあいうえお としたいのですが、str_replace()だと全部置換されてしまいますし、 preg_replace()やmb_ereg_replace()ではうまく置換されません。 対象とする文字列は、実際はHTMLタグやマルチバイトが混じっています。 置換するべき文字列は、全く同様のものが対象文字列内にも必ず含まれています。 preg_replace()やmb_ereg_replace()でも可能なのかもしれませんが、 どうやればいいのか分かりませんでした。 どなたかご教示下さい。

    • ベストアンサー
    • PHP
  • wordのワイルドカードを使用しての置換について

    word2007を使用しています。 置換を簡単に行うために、ワイルドカードを使用したいのですが、どのような指定をしたらよいでしょうか。お知恵をお貸しください。 やりたい内容は次のようなものです。 ・行頭から始まる「文字列1(文字列2)」のような形を見つけ、文字列1の前に★をつける。 (例)下記のような<文章1>を<文章2>のように置換する。 <文章1> あいうえお(かきくけこ) さしすせそ たちつてと あああ(いいい) ううううう えええ(おおお) <文章2> ★あいうえお(かきくけこ) さしすせそ たちつてと ★あああ(いいい) ううううう  えええ(おおお) よろしくお願いいたします。

  • Wordで特定の文字列を下線付きに置換

    こんにちは。 Wordで検索/置換機能を使うと特定の文字列を別の文字列に置換できますが、置換後の文字列を修飾文字(下線付き)に出来ないでしょうか? 具体的には、業績集で特定の著者名に下線を引きたいのですが、量が多いので一括で出来ればと思って質問しました。

  • 検索と置換でチェックを外すことはできないですか?

    アクセスのYesno型のフィールドで 検索と置換でチェックを外すことはできないですか? チェックが入った状態で 検索する文字列:-1 置換後の文字列:0 にしましたが、何も起こりませんでした。 こういう時は更新クエリをするしかないのでしょうか?