Excel VBA:指定範囲内の特定文字だけに対してフォント等変更するコード


http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_cell_font.html

こちらのwebsiteを参考に書き換えた。

「数字だけをヒラギノ角ゴ W6」にして目立たせるコード。

元の書式:色-自動、フォントサイズ-7
変更後の書式:フォント名-ヒラギノ角ゴ W6

#.Nameあたりに書き加えれば、数字だけ色を変えたり大きくしたり、いろいろできそう。

Sub mojiiro()

Dim myRng As Range
Dim myStr As String
Dim i As Integer

'----元の書式に設定する
For Each myRng In Selection
    With myRng.Font
        .ColorIndex = xlColorIndexAutomatic
        .Size = 7
End With

'----セルの文字列を1文字ずつ順番に調べる
For i = 1 To Len(myRng)
    myStr = Mid(myRng.Value, i, 1)
    '----数字があったら書式を変更する
    If myStr Like "[0-9]" Then
        With myRng.Characters(Start:=i, Length:=1).Font
        .Name = "ヒラギノ角ゴシック W6"
        End With
    End If
Next i

Next myRng
End Sub

この記事が気に入ったらサポートをしてみませんか?