OKWAVEパソコン版の推奨環境変更のお知らせ
  • ベストアンサー

セルの一部のフォントの置き換え可能ですか?エクセル2000

A列に店名がならんでいます。 1鈴木商店 2山田商店 3田中呉服店 4山口飲食店   ・   ・   ・ たとえば、 これの一文字の「店」のフォントだけを他のフォントに 一括で置き換えできませんか? よろしくお願いします。

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

  • ベストアンサー
  • sakenomo
  • ベストアンサー率52% (35/67)
回答No.2

A列以外の適当なセルを選び、そのセルの書式(フォント)を変更したいフォントに設定してください。 上記のセルが選択された状態で、以下のマクロを実行してみてください。 作動する範囲はA1:A100になっています、実情に合わせて書き換えてください。 #このマクロでは、各セル中で変更できる文字は1つだけです。 Sub test()  For Each c In Range("A1:A100") '←作動範囲   p = InStr(c, "店")   If p > 0 Then    c.Characters(Start:=p, Length:=1).Font.Name = _    ActiveCell.Font.Name   End If  Next End Sub

usubeni
質問者

お礼

どうも、ありがとうございました。 一文字だけでいいんです。 うまくいきました。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

#1です。 私の回答の主眼目はCharacters()の紹介にありましたが。 >フォントの種類を変えたいのです エクセルVBAでフォントの種類を指定するのはFont.Name=です。 Cells(i, "A").Characters(p).Font.Name="○○" を入れてください。 例えば・・・.Font.Name = "HG創英角ゴシックUB"のように。 だだフォントの種類を表す漢字カナ文字表現は、正確にはどういう文字綴りなのか、記述が難しいと個人的に思います。 そこであるセル内の文字全体を、ご希望のフォントに変更する操作をします。そのとき「マクロの記録」を使って、記録しておき、内容をツール-マクロ-マクロ-「編集」で見てFont.Name=を探し、=の右辺を見て、コピーし貼りつけして下さい。

usubeni
質問者

お礼

sakenomoさんの方法で、うまくいきました。 imogasiさんの方法も、試してみます。 どうも、ありがとうございました。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

これは多分VBAでないと、出来ないでしょう。 VBAでは Sub test01() For i = 1 To 30 s = Cells(i, "A") p = InStr(s, "店") Cells(i, "A").Characters(p).Font.Size = 23 Cells(i, "A").Characters(p).Font.ColorIndex = 5 Next i End Sub 上記はA列のセルの文字列を対象にしています。 C列ならA-->Cに変えること。 30行のセルを対象にしています。 第18行までならFor i = 1 To 30をFor i = 1 To 18 にします。 上記はフォントサイズと色を指定してます。 ColorIndex=●がどう言う色かは実際に入れて試してみるかColorIndexでWEB照会してください。

usubeni
質問者

お礼

どうも、ありがとうございました。 しかしVBAが、いまいち理解できてないのです。 ただ、フォントサイズや色でなくて、 フォントの種類を変えたいのです。 使いたいフォント(フリーで、JISにない)が、 JISにないので、その文字だけを 他のフォントにかえたいのです。

関連するQ&A

専門家に質問してみよう