1. ホーム

VBAにおける色、colorIndexまたはcolorまたはbackcolor

2022-02-25 10:46:30

1 EXCELのセルの色

1.1 条件付き書式

  • 一般的にEXCELでは、条件付き書式を使って色の変化を制御しているようです

1.2 色で絞り込むことができる

  • EXCELは色でフィルタリングすることができ、一般的でない色でフィルタリングすることができる
  • 一般的でない色の場合、まずEXCELのセルで使用し、他のセルはその色でフィルタリングできるようにする必要がある

2 VBAでカラー

2.1 colorindexの使用

  • セルの背景色を変更するには: range.Interior.ColorIndex=
  • セルのフォントの色を変更する: range.font.ColorIndex=
  • colorindexはEXCELのカラーコードで、世界共通ではなく、全部で56種類です

2.1.1 EXCELのcolorindexの色と数値の対応関係を表示するコードを自分で書いてみる

Sub test_color()
Range("i6:i19")).Interior.ColorIndex

For Each i In Range("B1:H19")
    ColorIndex = i.Value
Next

'The first time I thought of this idea does not work Union(Range("c6:c19"), Range("E6:E19"), Range("G6:G19"))
End Sub

2.2 color=rgb(,,)やTextBox1.BackColor=rgb()などの一般的なRGB()値

  • range.interior.color=rgb()です。

  • TextBox1.BackColor = RGB(0, 255, 0)

  • 実は、rgb()の値に慣れていると使いやすいんです

Sub test_color2()

Range("C1").Interior.Color = RGB(255, 0, 0)
Range("C2").Interior.Color = RGB(0, 255, 0)
Range("C3").Interior.Color = RGB(0, 0, 255)

Range("D1").Interior.Color = RGB(255, 255, 255)
Range("D2").Interior.Color = RGB(0, 0, 0)


Range("e1").Interior.Color = RGB(255, 255, 0)
Range("e2").Interior.Color = RGB(0, 255, 255)
Range("e3").Interior.Color = RGB(255, 0, 255)

End Sub


2.3 色を設定するもう1つの方法

  • キーワードは「&」です。
  • カラーコードとの対応が明確でない
Private Sub Label1_Click()
Label1.BackColor = &O555555
End Sub

<イグ

3 子どもと遊べるEXCELカラーチェンジコード

コード1:子供向けEXCELカラーコード

Sub ponyma1()

'For i = 1 To 101 Step 2
' Cells(i, 2).Interior.ColorIndex = 6
'Next
'
'
'For i = 2 To 100 Step 2
' Cells(i, 2).Interior.ColorIndex = 1
'Next

k = 10
For i = 1 To 102 Step 1
   Cells(i, 1).Interior.ColorIndex = 1 + k
   Interior.ColorIndex = 1 + k - 1
   ColorIndex = 1 + k - 2
   k = k + 1
   If k >= 7 Then
      k = 0
   End If
Next


End Sub


コード 2: ループの色が変わるまでの待ち時間 ------ この良いカードの待ち時間

Sub ponyma1()

For i = 0 To 56
   Application.Wait (Now + TimeValue("0:00:01"))
   Range("c1:c10").Interior.ColorIndex = i
Next

End Sub