プロが教える店舗&オフィスのセキュリティ対策術

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

よろしくお願いします。

A 回答 (3件)

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
    • good
    • 1
この回答へのお礼

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

お礼日時:2003/07/12 20:00

#1です。


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

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

お礼日時:2003/07/12 20:07

これは多分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照会してください。
    • good
    • 1
この回答へのお礼

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

お礼日時:2003/07/11 19:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!