cellio

Excelの条件付き書式を数式で設定する方法!行全体の色付けも解説

Excelの条件付き書式に数式を使う方法を徹底解説。ステータスに応じた行全体の色付け、期日切れや重複のハイライト、重要となる複合参照($記号)のルールまでわかりやすく紹介します。

著者 Ayoub Farid · · 4 分で読めます

「指定の値より大きい」「重複する値」「カラースケール」といった標準の組み込みルールだけでも、基本的な強調表示はカバーできます。しかし、数式を活用すれば自由度は一気に広がります。ステータスが「遅延」のときに行全体を塗りつぶしたり、1週間以内の期日を判定したり、目標未達の売上だけを目立たせたりすることも自由自在です。

数式を使ったルールの追加手順

  1. 書式を設定したいセル範囲を、左上のセルを起点にして選択します(例:A2:F100)。
  2. ホーム > 条件付き書式 > 新しいルール > 数式を使用して、書式設定するセルを決定 をクリックします。
  3. 選択範囲の左上セルを基準として、TRUE(真)またはFALSE(偽)を返す数式を入力します。
  4. 「書式」をクリックして好みのスタイルを選び、「OK」を押します。

Excelは、通常の数式を下や右にオートフィル(コピー)したときとまったく同じように参照先をずらしながら、指定範囲内の全セルにこの数式ルールを適用します。

「$」記号のルール(参照の固定)

条件付き書式がうまく動かない原因の多くは、この「$」記号の使い方にあります。

F列の値が「遅延」のときに行全体をハイライトする場合:

=$F2="Late"
  • $F: A列、B列、C列…の書式を判定するときも、常にF列の値を参照するように固定します。
  • 2($なし): 行ごとに判定位置が下に移動するようにします(相対参照)。

もし「$」を付け忘れると、B列の判定時にはG2セル、C列の判定時にはH2セルを参照してしまい、意図した結果になりません。詳細は複合参照の解説もあわせてご覧ください。

実務で役立つ便利な数式ルール一覧

ハイライトしたい内容設定する数式(データが2行目から始まる場合)
期限切れの日付(C列)=AND($C2<TODAY(),$C2<>"")
7日以内に迫った期日=AND($C2>=TODAY(),$C2<=TODAY()+7)
F1セルの目標値を下回る実績=$B2<$F$1
各行の目標値(C列)を下回る実績=$B2<$C2
A列の重複データ=COUNTIF($A$2:$A$500,$A2)>1
売上の上位3件=$B2>=LARGE($B$2:$B$100,3)
1行おきの縞模様(1行飛ばし)=MOD(ROW(),2)=0
必須項目の未入力(空白セル)=$D2=""

事前にシート上で数式をテストする

条件付き書式に設定する前に、まずは2行目の空いているセルに数式を入力し、下にオートフィルでコピーしてみてください。強調したい行で正しく「TRUE」が表示されていれば、条件付き書式のルールとしても確実に機能します。

ルールの管理とトラブルシューティング

「ホーム > 条件付き書式 > ルールの管理」を開くと、設定済みのすべてのルール、適用されている数式、対象のセル範囲を確認できます。「意図しない行が塗りつぶされる」といったトラブルの大半は、ドル記号($)の付け間違いか、数式の参照先が選択範囲の開始行と一致していないことが原因です。

よくある質問

特定のセルの値に基づいて行全体を色付けするにはどうすればよいですか?

色を付けたい行全体の範囲を選択し、=$F2="Late" のように列記号の前にのみ「$」を付けた数式ルールを設定してください。

条件付き書式で意図しないセルがハイライトされてしまうのはなぜですか?

数式内のセル参照が、選択範囲の左上セルとずれているか、「$」記号による絶対参照・相対参照の設定が誤っている可能性が高いです。

今日より前の日付をハイライトするにはどうすればよいですか?

数式ルールに =$C2<TODAY() と入力して設定します。

Googleスプレッドシートでも数式を使った条件付き書式は使えますか?

はい、利用可能です。「表示形式 > 条件付き書式」を開き、「セルの書式設定の条件」で「カスタム数式」を選択してください。

あわせて読みたい