1ヶ月でWebデザイン・プログラミングスキルをオーダーメイドのカリキュラムで学べるスクール、それがWebCamp。

子供の想像力を伸ばしアイデアを形にする小学生向けプログラミング教室「プロスタキッズ」

【VBA入門】セルの色を取得する方法

【VBA入門】
Pocket

Excelのセルの色を取得する方法についてご説明します。
カラーパレットには似た色がいくつもありどれが設定されていたのか悩むことがありますが、VBAなら正確な色の情報を取得することができます。

ColorIndexによる取得

CellsまたはRangeで対象のセルを指定し、続けて「.Font.ColorIndex」で文字色の数値を、「.Interior.ColorIndex」で背景色の数値を取得します。

<コード>

<実行例>
【VBA入門】セルの色を取得する方法

この方法で取得した数値はExcelのカラーパレットの番号を示しています。
例ではカラーパレットの3番に赤が設定されているので、ColorIndexで3の値が返されました。
またカラーパレットはユーザーが独自に設定することが可能なので、ColorIndexの1番から順番に赤・青・緑・・と言う風に変更することもできます。

【VBA入門】セルの色を取得する方法

Colorによる取得

前述のColorIndexをColorに変更するとまた別の数値を取得することができます。

<変更後のコード>

<実行例>
【VBA入門】セルの色を取得する方法

この数値はRGB関数で作成される色を表現する数値と同じものです。
パソコン上の色は全てR(Red:赤)・G(Green:緑)・B(Blue:青)の3色についてそれぞれ0~255までの割合を指定することにより決定されます。
そして、3色の割合をRGB関数で計算し、算出された1つの整数値をColorで取得することができるのです。

まとめ

セルの色を取得する方法は2種類ありますが、どちらも色を数値で扱っているということがポイントです。VBAでセルの色を取得することができれば、他の人が作成したシートも簡単に再現することができます。

【おすすめ記事】

【VBA入門】Msgboxでメッセージボックスを活用する方法
【VBA入門】セルの検索を行う方法(Findメソッド)
【VBA入門】findで複数の条件を検索する方法

投稿者:プロスタ編集部

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

初心者がプログラミングで挫折しない学習方法を無料動画で公開中。オンラインに特化したプログラミングスクール「TechAcademy(テックアカデミー)」が解説。

この記事が気に入ったら
いいね!しよう

プロスタの最新情報をお届けします

あわせて読みたい

関連記事

ページ上部へ戻る