見出し画像

箸休め_4

今回もご覧いただき、ありがとうございます。
今回は、「色の情報」で遊んでみましょう。

「色」や「光」というと、中学校とかの授業で「色の三原色」や「光の三原色」など耳にされたかと思いますが、パソコンでは色の情報を「光の三原色」として処理しています。
光は、三原色の混ざり加減によって様々な色に変化する性質があります。
その三原色とは赤(R)・緑(G)・青(B)です。
そしてすべてのRGBがバランスよく混ざると「白」になり、まったく無い状態では「黒」となります。
この性質を数値化して表現しているものを「カラーコード」と呼んでいます。
それぞれの原色(R・G・B)を0~255の色調に分解して、次のような算式で表しています。
色=R+G*256+B*256*256 つまり256進数でコード化されていて、0(黒)~16,777,215(白)の色が表現できることになります。
これだけの色があると、写真も綺麗に再現できそうですね。

Excelでは、この色を「セルの塗りつぶし」「フォント」「罫線」等に利用することができます。
今回は、「セルの塗りつぶし」に主眼をおいて説明します。

それでは、いつものようにBook「練習2」を開いて、シート「Color」を追加・作成してください。実行ボタンもわすれずに。

シート「Color」
Sub CLC()

    R = Cells(6, "D")              '赤のコード
    G = Cells(6, "E") * 256        '緑のコード*256
    B = Cells(6, "F") * 256 * 256  '青のコード*256*256
    C = R + G + B                  '合成色のコード(赤のコード+緑のコード*256+青のコード*256*256)

    Cells(8, "D").Interior.Color = R 'Rのコードをセルの色として代入
    Cells(8, "E").Interior.Color = G 'Gのコードをセルの色として代入
    Cells(8, "F").Interior.Color = B 'Bのコードをセルの色として代入

    Cells(6, "H") = C                '合成色のコードを代入
    Cells(8, "H").Interior.Color = C '合成色のコードをセルの色として代入

End Sub

となります。
SUB CLCと実行ボタン「MSG」を関連付けてください。

ツールバー>ホーム>フォントにある「塗りつぶしの色」の選択ボタン>その他の色をクリックして

パレット

表示される

ダイヤログボックス

ダイヤログボックスで好みの色を探して、その色のR・G・B値をそれぞれのセルに入力してください。

RGBの値を入力

ここで、実行ボタンをクリックすると

カラーコードに対応する「セルの色」

それぞれのセルに色が表示されます。

補足
コーディングの方法については、次の3とおりから好きな書き方を身に着けてください。ただし&H(Hexa)は左からBGRの順になるのでご注意ください。
なお、例えば11行目H列のセルを「塗りつぶしなし」の状態にするには、
Cells(11, "H").Interior.ColorIndex = 0 となります。

Sub CCD()

    Cells(11, "H").Interior.Color = 13424975            '10進数
    Cells(12, "H").Interior.Color = &HCCD94F            '16進数(Hexa:BGR←順序に注意)
    Cells(13, "H").Interior.Color = RGB(79, 217, 204)   'R,G,B



End Sub

また、例えばCells(11,"G")=Cells(11, "H").Interior.Color とすると、11行目G列にH列のカラーコードを表示することができます。

今回も最後までご覧いただき、ありがとうございました。


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