街中で見かけて「グッときた人」の思い出

いつもお世話になっております。

A1からA4 まででセルの文字数によりフォントサイズを変えるコードなのですが
動きがおかしいです。お時間ある方いらっしゃいましたらこのしょうもないコードを修正して頂きたいです。よろしくお願いいたします。

Sub test()

Dim i As Long
Dim s As Long
Dim f As String

s = Range("A" & Rows.Count).End(xlUp).Offset(0, 0).Row

For i = 1 To s

f = Len(Cells(i, 1).Value)

Select Case f
Case 1 To 4
Selection.Font.Size = 11
Case 5 To 10
Selection.Font.Size = 7
Case 11 To 20
Selection.Font.Size = 5
End Select


Next i



End Sub

A 回答 (1件)

こんにちは!



セル内の文字数が21以上の場合、何もしなくて良いのですね?
一例です。

Sub Sample1()
Dim i As Long, k As Long
For i = 1 To 4 '←1行目~4行目まで//
For k = 1 To Len(Cells(i, "A"))
Select Case k
Case Is < 5
Cells(i, "A").Characters(Start:=k, Length:=1).Font.Size = 11
Case Is < 11
Cells(i, "A").Characters(Start:=k, Length:=1).Font.Size = 7
Case Is < 21
Cells(i, "A").Characters(Start:=k, Length:=1).Font.Size = 5
End Select
Next k
Next i
End Sub

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

いつもお世話になります。

characters ←初めて見ました。
調べてみます。ありがとうございました。

お礼日時:2016/12/13 17:34

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


おすすめ情報