MAGAZINE
ルーターマガジン
列ごとに色分けしたい!Google スプレッドシートでカラースケールを列単位で独立適用する方法(GAS、マクロ不使用)

はじめに
Google スプレッドシートの「条件付き書式」は、数値の大小を色で視覚的に表現できる便利な機能です。特に「カラースケール(グラデーション)」は、定量的なデータの分布を一目で把握するのに最適です。
ただし、複数列に同じカラースケールを適用すると、全体の最小値・最大値を基準に色が付き、列ごとの違いが分かりづらくなることがあります。
解決方法を探そうとググってみてもGoogle Apps Script(GAS)やマクロを使った方法ばかりが出てきがちで「難しそうだな、関数や式だけでできないのか?」と実践するのに二の足を踏んでしまいます。
本記事ではGASを使わずにスプシ標準機能だけで実現できる方法をご紹介します。 それが、各列に対して独自の「最小値・平均・最大値」を数式で指定する方法です。
失敗例:カラースケールを複数列に一括適用した場合
例えば、以下のような表(日次のくだものの売り上げ個数)を想定します:
このとき、B列〜D列をまとめて範囲選択(B2:D11
)してカラースケールを適用すると…
- 色の濃さは「全体(B〜D列)での最小値・最大値」に基づいて決まってしまう。(最小値1、最大値100で色付けされる)
- その結果、例えば「りんご(B列)」のように値の幅が小さい列は、全て同じ色がつけられ差が確認できない状態になってしまいます。
失敗例のカラースケール:列ごとの意味のある差が色に反映されない。
成功例:列ごとにスケールを独立させる
各列のカラースケールを独立させるには、以下のように値(数式)で最小・最大・中央値を指定します。
設定手順
- 対象範囲(例:
B2:D11
)を選択。 - メニューから「表示形式 > 条件付き書式」を開く。
- 書式ルールの「カラースケール」を選択。
- 「最小点」「中央」「最大点」の値のタイプを「値」に変更。
- それぞれ以下の数式を入力:
設定値 | 数式 |
---|---|
最小点 | =MIN(B$2:B$11) |
中央 | =MEDIAN(B$2:B$11) |
最大点 | =MAX(B$2:B$11) |
(目的に応じてMEDIAN
はAVERAGE
でも可)
▼条件付き書式の設定
▼列ごとに独立したカラースケールを適用した結果
成功例のカラースケール:各列の最小〜最大に応じてグラデーションが反映され、データの分布が直感的に把握できます。
ポイント
- 条件付き書式で「値による指定」を使えば、列ごとに独立したスケールを設定できます。
- 数式の範囲に
$
を使って行範囲を固定することで別の列(C列、D列)では自動で各列の値を参照してくれます。 - 複数列で独立した異なる単位やスケールのデータを扱う場合、この方法が特に有効です。
- 応用として、値設定時に行ではなく列を固定すれば(例:$B2:$D2)行ごとに独立したカラースケールを実現できます。
まとめ
Google スプレッドシートのカラースケールを使う際、複数列を一括で設定すると色分けの意味が失われがちです。
列ごとに条件付き書式を設定し、MIN
/ MEDIAN
/ MAX
の数式を使うことで、見やすく意味のある可視化が実現できます。
日々のスプシを利用したデータ整理や分析に、ぜひこのテクニックを活用してみてください!
CONTACT
お問い合わせ・ご依頼はこちらから