セルの値に応じてセルに色を付ける:Excel VBA入門 |
スポンサードリンク | |
Private Sub Worksheet_Change(ByVal Target As Range) Dim myColor As Variant If Target.Count <> 1 Then Exit Sub If Target.Column <> 5 Then Exit Sub Application.EnableEvents = False Select Case Target.Value Case 1 myColor = 3 '赤 Case 2 myColor = 5 '青 Case 3 myColorl = 6 '黄 Case 4 myColor = 15 'グレー Case 5 myColor = 43 '緑 Case Else myColor = xlNone End Select Cells(Target.Row, 1).Resize(1, 5).Interior.ColorIndex = myColor Application.EnableEvents = True End Sub |
Private Sub Worksheet_Change(ByVal Target As Range) Dim myColor As Variant Dim c As Range Dim myRng As Range Set myRng = Application.Intersect(Range("E:E"), Target) If myRng Is Nothing Then Exit Sub Application.EnableEvents = False For Each c In myRng Select Case c.Value Case 1 myColor = 3 '赤 Case 2 myColor = 5 '青 Case 3 myColorl = 6 '黄 Case 4 myColor = 15 'グレー Case 5 myColor = 43 '緑 Case Else myColor = xlNone End Select Cells(c.Row, 1).Resize(1, 5).Interior.ColorIndex = myColor Next c Application.EnableEvents = True End Sub |
Sub iro_Test() Dim R As Integer Dim G As Integer Dim B As Integer Dim MyColor As Long Dim i As Long For i = 2 To 57 MyColor = Cells(i, 2).Interior.Color R = MyColor Mod 256 G = Int(MyColor / 256) Mod 256 B = Int(MyColor / 256 / 256) Cells(i, 3).Value = "RGB(" & R & "," & G & "," & B & ")" Next i End Sub |
スポンサードリンク
PageViewCounter
Since2006/2/27