「この数字、基準を超えたら赤くしたい」「完了したタスクはグレーにしたい」。スプレッドシートで表を作っていると、こんな場面に何度も出くわしますよね。
そこで活躍するのが条件付き書式です。Googleスプレッドシートの条件付き書式とは、セルの値に応じて自動で色や文字スタイルを変える機能のこと。一度ルールを設定すれば、データが更新されても表示がそのまま追従してくれます。手作業で色を塗り直す必要がなくなりますよ。
ただ、いざ使おうとすると「行全体に色が付かない」「カスタム数式が思い通りに動かない」とつまずく人が多いのも事実です。この記事では、スプレッドシートの条件付き書式を基本設定から解説します。さらにカスタム数式・動かない原因・削除と管理まで、実務で詰まりやすいポイントを正直に掘り下げていきます。
スプレッドシートの条件付き書式とは?基本設定とカラースケール
スプレッドシートの条件付き書式とは、あらかじめ設定した条件に合ったセルの見た目を、自動的に変える機能です。たとえば「売上が目標を下回ったら赤」「ステータスが完了なら緑」といったルールを作れます。
ポイントは「自動」であることです。数字が変わるたびに手動で色を塗り直す必要がありません。条件を一度設定すれば、データの変化に合わせて書式がリアルタイムで更新されます。
設定の入り口は、メニューの「表示形式」→「条件付き書式」です。画面右側にサイドパネル(設定用の細長いパネル)が開き、ここでルールを作っていきます。モードは「単一色」と「カラースケール」の2つです。
条件付き書式で変更できる書式の種類
スプレッドシートの条件付き書式で変更できるのは、以下の3種類です。
- 背景色: セルの塗りつぶし色
- 文字色: フォントの色
- テキストスタイル: 太字・斜体・取り消し線
セルの値そのものは書き換わりません。あくまで「見た目」だけが変わる仕組みです。元のデータはそのまま保たれるので、安心して使えますよ。
なお、Excelにある「データバー」(セル内に棒グラフを表示する機能)や「アイコンセット」は、スプレッドシートには搭載されていません。罫線やフォントサイズの自動変更もできません。とはいえ、カスタム数式を使えば多くの条件は再現できます。詳しい比較は記事後半の「Excelとの違い」で表にまとめています。
基本の条件付き書式を設定する手順
まずは、もっともシンプルな「セルの値で色を変える」設定から始めましょう。ここでは売上データを例に、目標未達のセルを赤くする方法を紹介します。設定は次の5ステップで完了します。
1. 色を変えたいセル範囲を選択する
たとえば、売上金額が入った「B2:B10」を選択します。
2. メニュー「表示形式」→「条件付き書式」を選ぶ
画面右側にサイドパネルが開きます。
3. 「セルの書式設定の条件」で条件を選ぶ
ドロップダウンから条件を選びます。今回は「次の値以下」を選択し、値に「50000」と入力します。
4. 書式スタイルを設定する
背景色を赤系に変更します。文字色や太字も、必要に応じて設定できます。
5. 「完了」をクリックして適用する
50000以下のセルが、自動で赤く表示されます。データを書き換えても色は追従しますよ。
よく使う条件の種類一覧
条件付き書式で選べる主な条件を、カテゴリ別にまとめました。
| カテゴリ | 条件の例 |
|---|---|
| テキスト | 次を含む / 次で始まる / 次で終わる / 完全一致 |
| 数値 | 以上 / 以下 / 次の値と等しい / 次の値の間 |
| 日付 | 日付が次の値より前 / 次の値より後 / 今日 |
| その他 | 空白 / 空白ではない / カスタム数式 |
テキスト条件は、ステータス列の色分けに便利です。「完了」なら緑、「未着手」なら赤、といった使い方ができます。日付条件は、期限管理でよく使いますよ。
複数ルールの優先順位に注意
1つの範囲に複数のルールを設定したときは、優先順位に注意が必要です。スプレッドシートは、サイドパネルに表示されている順序で、ルールを上から評価します。
そして、最初に「真(条件を満たす)」と判定されたルールだけが適用されます。下にあるルールは無視される仕組みです。たとえば「80以上は緑」「50以下は赤」の2つを設定するとき、並び順が結果に影響します。
優先順位を変えたいときは、サイドパネルでルールをドラッグ&ドロップします。思った通りの色にならないときは、まずルールの順序を確認してみてください。
カラースケールで数値の大小をひと目で把握する
カラースケールは、数値の大小に応じてセルの背景色をグラデーションで変える機能です。売上一覧や評価点のように「全体の中での位置づけ」を把握したいときに役立ちますよ。設定の流れは、基本ルールとほぼ同じです。
1. 数値が入ったセル範囲を選択する
たとえば月別売上の「B2:B13」を選択します。
2. 条件付き書式のサイドパネルを開く
メニュー「表示形式」→「条件付き書式」を選びます。
3. 「カラースケール」タブに切り替える
サイドパネル上部の「カラースケール」をクリックします。
4. 色とポイントを調整する
デフォルトでは、最小値から最大値への2色グラデーションが設定されます。中間値を追加すれば、3色グラデーション(例: 赤→黄→緑)も作れます。各ポイントの基準は「最小値」「最大値」のほか、「数値」「パーセント」「パーセンタイル」から選べます。
カラースケールが活きるのは、次のような場面です。
- 月別売上の比較: 高い月は濃い緑、低い月は薄い緑
- テストの点数一覧: 高得点は青系、低得点は赤系
- 在庫数の管理: 残数が少ないセルほど赤く表示
数字だけの表より、格段に見やすくなります。数値の偏りや傾向がパッとわかるので、報告資料にもおすすめですよ。
カスタム数式で高度な条件付き書式を作る
基本のルールでは対応できない条件には、カスタム数式を使います。カスタム数式とは、自分で数式を書いて「TRUE / FALSE」で判定させる方式のこと。行全体の色付けや複数条件の組み合わせなど、自由度の高い設定ができます。
条件付き書式でつまずく人の多くは、このカスタム数式で詰まります。逆にここを押さえれば、応用が一気に広がりますよ。
カスタム数式の基本ルール($記号の使い方)
カスタム数式は = で始まる式を入力します。式の結果がTRUEになったセルに、書式が適用される仕組みです。
ここで最重要なのが「$(ドル記号)」の使い方です。$は参照する列や行を「固定」するための記号で、付ける位置によって意味が変わります。
| 参照の書き方 | 意味 | 使う場面 |
|---|---|---|
$A2 | 列を固定、行は相対 | 行全体に色を付けるとき |
A$1 | 列は相対、行を固定 | 列全体に同じ条件を適用するとき |
$A$1 | 完全固定 | 特定のセルを参照するとき |
カスタム数式で最もよく使うのは $A2 の形です。列だけを固定し、行は相対参照のままにします。これが行全体ハイライトの鍵になりますよ。
行全体に色を付ける方法(最頻出テクニック)
「C列が”完了”の行を、まるごとグレーにしたい」。これは条件付き書式の検索でもっとも多いニーズの一つです。手順を見ていきましょう。
1. 色を付けたい範囲を行全体に広げる
「A2:E100」のように、表の全列を含む範囲を選択します。1列だけ選ぶと、その列にしか色が付きません。
2. カスタム数式に列固定の式を入力する
=$C2="完了"
ポイントは $C2 です。列を $ で固定しているので、A列〜E列のどのセルを判定するときも、必ずC列を参照します。行番号は相対なので、各行のC列の値が評価される仕組みです。
3. 書式を設定して「完了」をクリックする
これで、C列が「完了」の行全体がグレーに変わります。$を付けずに =C2="完了" と書くと行全体に色が付きません。その理由は後半の「動かない原因」で詳しく解説します。
複数条件を組み合わせる(AND / OR)
条件を2つ以上組み合わせたいときは、AND関数やOR関数を使います。
AND(すべての条件を満たす場合):
=AND($C2="完了", $D2>=10000)
C列が「完了」かつD列が10000以上のときに、書式を適用します。両方の条件を満たさないと色は付きません。
OR(いずれかの条件を満たす場合):
=OR($C2="完了", $C2="承認済み")
C列が「完了」または「承認済み」のときに、書式を適用します。どちらか一方を満たせば色が付きます。
AND関数・OR関数の詳しい使い方は、こちらの記事で解説しています。
日付の期限切れを自動で強調する
期限管理シートで「期限切れのタスクを赤くする」設定は、実務で重宝します。TODAY関数(今日の日付を返す関数)と組み合わせましょう。
期限切れ(赤):
=$D2<TODAY()
D列の日付が今日より前なら、赤背景にします。
期限が今日と一致(オレンジ):
=$D2=TODAY()
D列の日付が今日ちょうどなら、オレンジ背景にします。
期限3日以内(黄色):
=AND($D2>=TODAY(), $D2<=TODAY()+3)
D列の日付が今日から3日以内なら、黄色背景にします。TODAY()+3 で「今日から3日後」を表しています。
複数のルールを同時に設定する場合は、「期限切れ」ルールを一番上に配置してください。期限切れの行が黄色になってしまうのを防げます。TODAY関数について詳しくは、こちらをご覧ください。
重複値を検出するカスタム数式
データのクリーニングで「重複している値を見つけたい」場面もありますよね。COUNTIF関数(条件に一致するセルの個数を返す関数)を使えば、重複セルだけを強調表示できます。
=COUNTIF(A:A, A2)>1
これは「A列全体の中で、A2と同じ値が2回以上ある」という意味です。条件に合うセルだけにハイライトが付きます。重複入力のチェックに便利ですよ。COUNTIF関数の詳しい使い方は、こちらで解説しています。
チェックボックスと条件付き書式を連動させる
タスク管理シートで「チェックを入れたら行全体をグレーアウトする」設定は、条件付き書式の定番です。完了タスクが視覚的に区別できるので、未完了タスクに集中しやすくなります。
チェックボックスは、チェックが入ると TRUE、外れると FALSE の値を持ちます。この仕組みをカスタム数式で活用するのがコツです。
1. チェックボックスを挿入する
A2セルを選択し、メニュー「挿入」→「チェックボックス」を選びます。「A2:A20」のように範囲選択すれば、まとめて挿入できますよ。
2. 条件付き書式を設定する
色を変えたい範囲(例: A2:E20)を選択し、条件付き書式のサイドパネルを開きます。
3. カスタム数式を入力する
=$A2=TRUE
A列のチェックボックスがTRUE(チェック済み)のとき、その行全体に書式を適用します。
4. 書式を設定する
背景色は薄いグレー、テキストスタイルは取り消し線がおすすめです。完了感が出て見やすくなります。
5. 「完了」をクリックして適用する
チェックを入れるたびに、その行がリアルタイムでグレーアウトされます。チェックを外せば、すぐ元に戻りますよ。
ポイント
カスタム数式の
$A2で列を固定するのを忘れないでください。A2と書くと、B列のセルを判定するときにB2を参照してしまい、正しく動作しません。チェックボックスを使った進捗管理の実例は、スプレッドシートのタスク・進捗管理表を作る方法でも紹介しています。
土日を自動で色付けする(WEEKDAY関数の活用)
カレンダーや勤怠表を作るとき、「土日を自動で色分けしたい」というニーズは多いですよね。これはWEEKDAY関数(日付から曜日番号を返す関数)を使えば実現できます。
WEEKDAY関数の構文は =WEEKDAY(日付, [種類]) です。第2引数の「種類」によって、返ってくる曜日番号が変わります。以下が対応表です。
| 曜日 | 種類1(デフォルト) | 種類2 | 種類3 |
|---|---|---|---|
| 日 | 1 | 7 | 6 |
| 月 | 2 | 1 | 0 |
| 火 | 3 | 2 | 1 |
| 水 | 4 | 3 | 2 |
| 木 | 5 | 4 | 3 |
| 金 | 6 | 5 | 4 |
| 土 | 7 | 6 | 5 |
種類1(デフォルト)では日曜が1、土曜が7です。種類2では月曜が1から始まり、土曜が6、日曜が7になります。この記事では、わかりやすい「種類2」を使った数式で解説します。
土曜と日曜は、別々のルールとして設定します。色を分けたいからです。列Aに日付が入っている前提で、適用範囲は「A2:A100」のように広げておきます。
土曜を青にする:
=WEEKDAY($A2,2)=6
種類2で土曜は「6」なので、これで土曜の行が判定されます。
日曜を赤にする:
=WEEKDAY($A2,2)=7
種類2で日曜は「7」です。別ルールとして追加し、書式を赤系に設定します。
土日をまとめて色付けする場合:
=WEEKDAY($A2,2)>=6
6(土)と7(日)の両方を「6以上」でまとめて判定できます。色を分けず、土日を同じ色にしたいときはこちらが手軽です。
なお、祝日も自動で色付けしたい場合は、別シートに祝日リストを用意し、COUNTIF関数で照合する方法があります。ただし祝日リストは手動で更新する必要があります。WEEKDAY関数の詳しい仕様は、こちらの記事をご覧ください。
条件付き書式が動かないときの原因3パターン
「設定したのに色が付かない」「思った行と違う場所が光る」。条件付き書式でつまずく原因は、だいたい次の3つに集約されます。NG例とOK例を対比しながら見ていきましょう。
パターン1:$マーク(絶対参照)を付け忘れている
最も多いのがこれです。行全体に色を付けたいのに、列を固定する $ を忘れているケースです。
NG(動かない):
=C2="完了"
OK(正しく動く):
=$C2="完了"
$を付けないと何が起きるのでしょうか。適用範囲がA2:E100の場合、A列のセルを判定するときはC列を見てくれます。しかしB列のセルを判定するときはD列を参照します。さらにC列のセルを判定するときはE列を参照し、1つずつ参照列がズレていきます。
結果として、行全体ではなくバラバラのセルにしか色が付きません。列を固定したいときは、列記号の前に必ず $ を付けてください。
パターン2:ルールの優先順位が逆になっている
ルール自体は正しいのに、色が期待通りにならないパターンです。これは優先順位が原因です。
前述のとおり、スプレッドシートはルールを上から順に評価し、最初に真になったものだけを適用します。たとえば期限管理で、次の順番だと問題が起きます。
- ルール1: 期限3日以内 → 黄色(
=$D2<=TODAY()+3) - ルール2: 期限切れ → 赤(
=$D2)
期限切れの日付は「3日以内」の条件も満たすため、ルール1が先に真になります。結果、期限切れの行が赤ではなく黄色になってしまいます。
これを直すには、より厳しい条件を上に置きます。「期限切れ → 赤」を一番上に移動すれば、期限切れの行が正しく赤になりますよ。
パターン3:範囲指定がずれてルールが適用されていない
「一部の行だけ色が付かない」ときは、適用範囲を疑いましょう。条件付き書式は、ルールを設定した範囲の中でしか動きません。
たとえば適用範囲を「A2:E50」にしたまま、51行目以降にデータを追加したとします。すると51行目以降には、いくらカスタム数式が正しくても色が付きません。範囲の外だからです。
対処法は、サイドパネルでルールを開き、「範囲に適用」欄を確認することです。データが増える表なら、最初から「A2:E1000」のように余裕を持った範囲にしておくと、追加のたびに直す手間が省けます。
条件付き書式の削除・管理・コピー時の注意点
ルールを設定した後の「管理」は、意外と情報が少ない部分です。削除やコピーの挙動を知らないと、知らないうちにルールが増殖して混乱しがちです。ここを押さえておきましょう。
特定セル範囲だけ条件付き書式を削除する
不要になったルールは、サイドパネルから削除できます。手順は次のとおりです。
まず、削除したいルールが設定されている範囲を選択します。次に「表示形式」→「条件付き書式」でサイドパネルを開きます。すると、その範囲に適用されているルールの一覧が表示されます。
削除したいルールにカーソルを合わせると、ゴミ箱アイコンが出てきます。これをクリックすれば、そのルールだけが消えます。範囲全体のルールをまとめて消したいときは、範囲を選択して「表示形式」→「条件付き書式をクリア」を選ぶと一括削除できますよ。
コピー&ペースト時にルールが連鎖する問題と対処法
意外と知られていないのが、コピー時の挙動です。条件付き書式が設定されたセルをコピーして別の場所に貼り付けると、書式ルールも一緒にコピーされます。
これが便利な場面もありますが、困ることもあります。たとえば1行コピーして10行に貼ると、同じルールが範囲を変えて10個に増えることがあります。気づかないうちにルールが乱立し、管理が大変になるのです。
ルールを連鎖させたくないときは、値だけを貼り付けましょう。コピー後、貼り付け先で右クリックし、「特殊貼り付け」→「値のみ貼り付け」を選びます。これで書式は引き継がれず、データだけがコピーされます。
UIの表記について
「特殊貼り付け」のメニュー項目名は、スプレッドシートのバージョンによって「値のみ貼り付け」「書式なしで貼り付け」など表記が異なる場合があります。いずれも「書式を持ち込まない貼り付け」を意味します。
ルール一覧を開いて整理する(管理パネルの使い方)
「どこにどんなルールを設定したか分からなくなった」というときは、範囲を広めに選択してサイドパネルを開きましょう。
選択した範囲に関係するルールが、サイドパネルにすべて表示されます。シート全体を選択すれば(左上の角をクリック)、そのシートのルールを一覧で確認できます。不要なルールはここで削除し、優先順位もドラッグで並べ替えられます。
なお、条件付き書式のルール数に、Google公式が明示する上限はありません。ただしルールが大量になると、シートの動作が重くなることがあります。特にTODAY関数のような揮発性関数(再計算が頻繁に走る関数)を多用する場合は、ルールを増やしすぎないよう注意してください。定期的に一覧を見直して、不要なルールを整理するのがおすすめです。
実務で使える条件付き書式ユースケース4選(比較表)
ここまでの知識を組み合わせた、実務で即使える4つのユースケースを紹介します。まず全体像を1枚の表で見比べてみましょう。
| ユースケース | 適用範囲の例 | 代表的なカスタム数式 | 書式 |
|---|---|---|---|
| タスク管理 | A2:E100 | =$A2=TRUE | グレー背景+取り消し線 |
| 売上集計 | C2:C100 | =$C2>=$D2 | 緑背景 |
| 勤怠管理 | C2:C100 | =$C2="有休" | 青背景 |
| カレンダー | A2:A100 | =WEEKDAY($A2,2)=7 | 赤背景 |
それぞれのシートで、複数ルールを組み合わせる例を見ていきましょう。
タスク管理シート(ステータス色分け+チェック連動)
タスク管理表のステータスを色分けし、完了チェックでグレーアウトする設定です。A列にチェックボックス、D列に期限が入っている前提です。
| ルール | カスタム数式 | 書式 |
|---|---|---|
| チェック済み | =$A2=TRUE | グレー背景+取り消し線 |
| 期限切れ | =AND($A2=FALSE, $D2 | 赤背景 |
| 期限3日以内 | =AND($A2=FALSE, $D2<=TODAY()+3) | 黄色背景 |
ルールの順序は、上から「チェック済み → 期限切れ → 期限3日以内」にします。完了済みのタスクが赤や黄色にならないよう、チェック済みルールを最優先にするのがコツですよ。
売上集計シート(目標達成率の可視化)
売上実績と目標を比較し、達成率に応じて色分けする設定です。C列が売上実績、D列が目標金額とします。
| ルール | カスタム数式 | 書式 |
|---|---|---|
| 目標達成(100%以上) | =$C2>=$D2 | 緑背景 |
| 80%以上 | =$C2>=$D2*0.8 | 黄色背景 |
| 80%未満 | =$C2<$D2*0.8 | 赤背景 |
ルール順は「達成 → 80%以上 → 80%未満」にしてください。$D2*0.8 で「目標の80%」を計算しています。
勤怠管理シート(休日・遅刻の強調)
勤怠表で、特定のステータスを色分けする設定です。C列に勤怠ステータスが入っている場合の例です。
| ルール | カスタム数式 | 書式 |
|---|---|---|
| 有休 | =$C2="有休" | 青背景 |
| 遅刻 | =$C2="遅刻" | オレンジ背景 |
| 欠勤 | =$C2="欠勤" | 赤背景 |
ステータスが増えても、同じ要領でルールを追加できます。テキスト完全一致の条件なので、表記ゆれ(「有休」と「有給」など)には注意してくださいね。
カレンダー(土日自動色付け)
日付列をもとに、土日を自動で色分けする設定です。前述のWEEKDAY関数を使います。A列に日付が入っている前提です。
| ルール | カスタム数式 | 書式 |
|---|---|---|
| 土曜 | =WEEKDAY($A2,2)=6 | 青背景 |
| 日曜 | =WEEKDAY($A2,2)=7 | 赤背景 |
カレンダーや勤怠表に組み込むと、休日が一目でわかります。日付を1か月分入力するだけで、土日が自動で色付くので便利ですよ。
Excelとの違い|移行時に知っておきたいポイント
ExcelからGoogleスプレッドシートに移行する方が最初に戸惑うのが、条件付き書式の操作画面と機能の違いです。主な違いを表にまとめました。
| 項目 | Excel | Googleスプレッドシート |
|---|---|---|
| メニューの場所 | ホーム → 条件付き書式 | 表示形式 → 条件付き書式 |
| データバー | あり | なし |
| アイコンセット(信号・矢印など) | あり | なし |
| 上位/下位ルール(上位10%など) | あり | なし(カスタム数式で代替可) |
| カラースケール | あり | あり |
| カスタム数式 | あり | あり |
| ルール管理画面 | ダイアログ形式 | サイドパネル形式 |
| 書式の種類 | 背景・文字色・フォントサイズ・罫線 | 背景・文字色・太字/斜体/取り消し線 |
メニューの場所が違う点は、移行直後によく迷うポイントです。Excelの「ホーム」ではなく、スプレッドシートでは「表示形式」から入ります。
Excelの「データバー」や「アイコンセット」は、スプレッドシートに搭載されていません。ただし、近い効果は得られます。
- データバーの代替: カラースケールで数値の大小を視覚化できます。棒グラフほどの直感性はありませんが、色の濃淡で傾向は十分つかめます
- 上位10%の代替: カスタム数式とPERCENTILE関数(順位の境界値を求める関数)を組み合わせれば再現できます
逆に、カスタム数式の書き方はExcelとスプレッドシートでほぼ共通です。$記号の使い方も同じなので、片方を覚えればもう片方でも応用できますよ。Excel版の条件付き書式について詳しくは、こちらをどうぞ。
まとめ
この記事では、スプレッドシートの条件付き書式を、基本設定からカスタム数式・動かない原因・削除と管理まで解説しました。要点を振り返ります。
- 基本ルール: セルの値で背景色・文字色・テキストスタイルを自動変更
- カラースケール: 数値の大小をグラデーションで視覚化
- カスタム数式: 行全体の色付け(
=$C2="完了")や複数条件(AND / OR)に対応 - 土日色付け: WEEKDAY関数で土曜(
=WEEKDAY($A2,2)=6)・日曜(=WEEKDAY($A2,2)=7)を自動判定 - 動かない原因: $マーク忘れ・優先順位の逆転・範囲ずれの3つを最初に疑う
- 削除と管理: 範囲選択してサイドパネルから削除。コピー時はルールが連鎖する点に注意
条件付き書式を使いこなせると、数字だけの表が「見ただけで状況がわかる表」に変わります。まずは基本の色分けから試してみてください。慣れてきたら、カスタム数式や土日の自動色付けにも挑戦してみてくださいね。
関連記事もあわせてどうぞ。
