• 締切済み

セル内の文字列強調

検索してセル内の任意の文字のみを強調(赤太字など)させることは出来ますでしょうか。 任意の文字については複数の文字列を一気に検索、強調表示させたいのです。 セル内の文字列全部というのはできるのですが、セル内の任意の文字のみの強調がうまくできず困っています。 どうぞ宜しくお願い致します。

みんなの回答

  • diashun
  • ベストアンサー率38% (94/244)
回答No.3

セルの「Characters」プロパティで設定できます。 たとえばB6セルに13文字以上の文字列が入力されているとします。 このとき、下記のコードを実行すると指定した文字だけが書式指定した通りになります。 'ここから標準モジュールにコピー************************** Sub Sample() Range("B6").Characters(Start:=3, Length:=3).Font.ColorIndex = 3 Range("B6").Characters(Start:=3, Length:=3).Font.Bold = True Range("B6").Characters(Start:=10, Length:=3).Font.ColorIndex = 4 Range("B6").Characters(Start:=10, Length:=3).Font.Bold = True End Sub 'ここまでコピー******************************* Start→書式を指定する文字列の開始桁位置 Length→書式を指定する文字列の桁数

noripdx
質問者

お礼

細かくご教授頂きありがとうございます。 早速試してみます。

すると、全ての回答が全文表示されます。
  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.2

Word2003であれば 表を選択 → 編集 → 検索 → 検索する文字列に「検索文字 」→ 「見つかったすべての項目を強調表示する」をON → 「すべて検索」をクリック → 閉じる → 書式 → フォントでフォントの色・太字等を設定 → Ok 検索と置換の基本をマスター http://www.sharp-pcstudio.com/disp.asp?cno=5&tbno=0&dno=136

noripdx
質問者

お礼

Word形式でしたら簡単そうですね。 ありがとうございます!

すると、全ての回答が全文表示されます。
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

セル内の文字列の一部を強調表示(Bold)と表示色を変える例を… 詳しくはCharactersオブジェクトを調べてください。 Set rng = ActiveCell cStart = 3 '//文字列に対する開始文字位置(文字数) cLength = 4 '//対象とする文字長さ cColor = 3 '//文字の変更色 rng.Characters(cStart, cLength).Font.FontStyle = "Bold" rng.Characters(cStart, cLength).Font.ColorIndex = cColor

noripdx
質問者

お礼

Charactersオブジェクトですね。ありがとうございます。 勉強不足で恐縮です。

noripdx
質問者

補足

その後色々調べてみた結果、下記で文字に色を付けることが出来ました。 ◆文字列“a”のみに色を付ける -------------------------------- Sub test02() Dim c As Range For Each c In Selection s = 1 Do x = InStr(s, c, "a") If x = 0 Then GoTo p02 c.Characters(x, 1).Font.ColorIndex = 3 MsgBox x s = x + 1 Loop While Not x = 0 p02: Next End Sub -------------------------------- 複数の文字に色をつけるところでまだ悩んでいます。 やり方がわからず度々で恐縮ですが、お教え頂けると有難いです。

すると、全ての回答が全文表示されます。

関連するQ&A