- ベストアンサー
Excelのプロシジャーで有効範囲のセルを限定したい
Excelの「コードの表示(V)」に、下記のフォントサイズ変更コードを登録してあります。この有効範囲を、あるセル範囲、たとえば(C3:S20) などのように限定したいのですが、どう記述したらよいのでしょうか、教えて下さい。よろしくお願いします。 (現在のコード) Private Sub Worksheet_Change(ByVal Target As Range) Dim c As Range Application.EnableEvents = False For Each c In Target If IsNumeric(c.Value) Then If Len(Mid$(c.Text, InStr(c.Text, ".") + 1)) > 1 Then c.Font.Size = 8 Else c.Font.Size = 9 End If End If Next c Application.EnableEvents = True End Sub
- みんなの回答 (3)
- 専門家の回答
お礼
zap35さん ありがとうございました。 小数桁数にこだわらないことにし、小数つきか整数かの判別のみで、下記で落ち着きました。 Private Sub Worksheet_Change(ByVal Target As Range) Dim c As Range, r as range set r = Application.Intersect(Me.Range("C3:G20"),Target) if r is nothing then exit sub Application.EnableEvents = False For Each c In r If IsNumeric(c.Value) Then If Int(c.Value) <> c.Value Then c.Font.Size = 8 Else c.Font.Size = 9 End If End If Next c Application.EnableEvents = True End Sub