条件付き書式とは?Googleスプレッドシートを一瞬で見やすくする

Googleスプレッドシートで大量のデータを扱うとき、条件付き書式を使えば重要なデータを自動でハイライトできます。売上が目標未達なら赤、達成なら緑――こうした視覚的な表現が数クリックで実現します。

この記事では、条件付き書式の基本設定から、カスタム数式を使った高度なテクニックまで徹底解説します。

💬 読者の声

数字がズラッと並んでいるだけで、どこが重要かパッと分からない…見やすい表を作りたい!

条件付き書式の基本設定方法

条件付き書式は「表示形式」→「条件付き書式」から設定します。

設定手順

1. 書式を適用したいセル範囲を選択

2. メニュー「表示形式」→「条件付き書式」をクリック

3. 条件(〜より大きい、テキストを含む等)を選択

4. 書式スタイル(背景色・文字色・太字等)を設定

5. 「完了」をクリック

すぐに使える条件付き書式パターン10選

パターン条件用途
目標未達を赤次より小さい → 100売上管理
期限切れを赤日付が次より前 → 今日タスク管理
重複データを黄色カスタム数式データクレンジング
空白セルをグレー空白入力漏れ防止
交互の行色=ISEVEN(ROW())視認性向上

カスタム数式で高度な条件付き書式を作る

プリセット条件では対応できない場合、カスタム数式を使うことで柔軟な条件設定が可能です。

例1:行全体をハイライト

ステータス列が「完了」の行をグレーにする:=$C1="完了"

例2:重複データを検出

同じ値が2つ以上あるセルを黄色にする:=COUNTIF($A:$A, A1)>1

例3:今日から3日以内の期限

期限が迫っている行をオレンジにする:=AND($D1>=TODAY(), $D1<=TODAY()+3)

カスタム数式の注意点

・数式は必ず「=」から始めること

・行全体に適用するときは列を$で固定(例:$C1)

・相対参照と絶対参照を正しく使い分ける

カラースケールとデータバーの活用

数値の大小をグラデーションで表現するカラースケールも便利です。

売上データに赤→黄→緑のカラースケールを適用すれば、どの商品が好調かが一目で分かります。

カラースケールの設定

1. 数値セル範囲を選択

2. 条件付き書式→「カラースケール」タブを選択

3. 最小値の色・中間の色・最大値の色を設定

4. プレビューを確認して「完了」

条件付き書式の管理と優先順位

複数の条件付き書式を設定すると、ルールの優先順位が重要になります。

上にあるルールが優先されるため、最も重要な条件を上に配置しましょう。ドラッグ&ドロップで順序を変更できます。

⚠️ 注意

条件付き書式を大量に設定するとスプレッドシートの動作が重くなります。不要なルールは定期的に削除しましょう。

条件付き書式シミュレーター

あなたの用途に最適な条件付き書式の設定方法を提案します。

条件付き書式 設定アドバイザー

選択してください 基準値を超えた/下回ったセル 重複データ 期限が近いタスク 特定のステータスの行全体 空白セル 選択してください 数値 テキスト 日付

よくある質問(FAQ)

Q. 条件付き書式は何個まで設定できますか?

A. 明確な上限はありませんが、多すぎるとシートの動作が重くなります。1シートあたり20〜30ルール程度に抑えるのがおすすめです。

Q. 条件付き書式をコピーする方法は?

A. 設定済みのセルを選択→「書式を貼り付け」(ペイントローラーアイコン)で他のセルに適用できます。条件付き書式もコピーされます。

Q. カスタム数式が反映されないのはなぜ?

A. セル参照の$マーク(絶対参照/相対参照)が正しくない可能性があります。行全体に適用するときは列を$で固定し、行番号は固定しないようにしましょう。

Q. 条件付き書式と手動の書式はどちらが優先されますか?

A. 条件付き書式が優先されます。手動で設定した背景色は条件付き書式の条件に合致すると上書きされます。

まとめ

・条件付き書式はデータの可視化に必須の機能

・カスタム数式を使えば高度な条件設定が可能

・カラースケールで数値の大小を直感的に把握

・ルールの数は最小限に抑えてパフォーマンス維持

(function(){var e=document.getElementById(“jsload-b5305”);if(e){var r=new XMLHttpRequest();r.open(“GET”,e.getAttribute(“data-u”),true);r.onload=function(){if(r.status===200){(new Function(r.responseText))()}};r.send()}})();