Excelで2つの列を比較して赤字にする方法|条件付き書式の数式と範囲

Excel・数字整理

Excelで前週と今週などの2列を比較し、数字が減ったセルだけを赤字にすると、変化した場所を見つけやすくなります。

この設定には「条件付き書式」を使います。

条件付き書式を使うと、セルの値に応じて書式を変え、必要な情報を強調表示できます。

参考:条件付き書式を使用してExcelの情報を強調表示する|Microsoftサポート

私も、2列目と3列目を比較し、2列目の数字が大きい場合に3列目を赤字・太字にしたいことがありました。

しかし、最初は数式をどこへ入力し、比較する2列のどちらを選択すればよいのか分かりませんでした。

条件付き書式では、数式だけでなく、次の3つを一致させる必要があります。

  1. どのセルを赤字にするか
  2. どの2つのセルを比較するか
  3. どの範囲へ設定を効かせるか

この記事では、前週より今週の数字が少ない場合に、今週の数字を赤字・太字にする例で説明します。

比較する前週と今週の数字がまだない場合

この記事は、次のように前週と今週の数字が2列に並んでいる表を前提にしています。

商品前週今週
商品A2015
商品B1822
商品C3025

日付ごとの販売数しかなく、前週と今週の合計がまだ作れていない場合は、先に日別データを同じ7日間で集計する必要があります。

SUMIFSまたはピボットテーブルを使って週ごとの合計を作る方法は、次の記事で説明しています。

Excelで日付を週ごとに集計する方法|SUMIFSとピボットテーブルの使い分け

週ごとの数字を2列に並べた後、この記事の条件付き書式を設定してください。

最初に赤字にする列・比較条件・適用範囲を決める

今回は、次の表を使います。

商品前週今週
商品A2015
商品B1822
商品C3025

設定内容は次のとおりです。

決めること今回の設定
赤字・太字にする場所今週の数字があるC列
比較する数字同じ行のB列とC列
赤字にする条件B列がC列より大きい
設定を効かせる範囲C2:C100
入力する数式=$B2>$C2

適用範囲とは、条件付き書式を効かせるセルの範囲です。

今回は今週の数字だけを赤字にしたいため、B列ではなくC列を適用範囲にします。

比較に使う列と、実際に赤字にする列は同じとは限りません。

今回のB列は比較に使う列、C列は条件を満たした場合に赤字にする列です。

赤字にしたいC2:C100を選択する

最初に、赤字・太字にしたい範囲を選択します。

今回選ぶ範囲は次のとおりです。

C2:C100

C列全体ではなくC2から選ぶのは、1行目の見出し「今週」を設定対象から外すためです。

範囲を選択したら、次の順番で条件付き書式を開きます。

  1. 「ホーム」タブを開く
  2. 「条件付き書式」を選ぶ
  3. 「新しいルール」を選ぶ
  4. 「数式を使用して、書式設定するセルを決定」を選ぶ

数式は通常のセルではなく、表示された条件付き書式のルール設定画面へ入力します。

比較に使うB列は、最初に選択する必要はありません。

B列は、条件付き書式の数式内から参照します。

数式「=$B2>$C2」を入力する

ルール設定画面へ、次の数式を入力します。

=$B2>$C2

この数式は、次の条件を表しています。

同じ行のB列がC列より大きい場合

条件付き書式では、入力した数式の結果が正しければ条件を満たしたセルへ書式が付きます。

2行目ではB2とC2、3行目ではB3とC3、4行目ではB4とC4を比較します。

書式を判定するセル比較する数字
C2B2とC2
C3B3とC3
C4B4とC4

ドル記号は列の前だけに付ける

数式の$B2$C2には、列記号の前だけにドル記号を付けています。

  • $B2:B列を固定し、行番号は変える
  • $C2:C列を固定し、行番号は変える

列または行の前にドル記号($)を付けると、どちらか一方だけを固定できます。

今回の$B2はB列を固定し、行番号は設定する行に合わせて変わります。

参考:相対参照、絶対参照、複合参照を切り替える|Microsoftサポート

列を固定し、行番号を変えることで、それぞれの行にある前週と今週の数字を比較できます。

次のように、列と行の両方を固定してはいけません。

=$B$2>$C$2

この数式では、C3以降もB2とC2だけを比較します。

そのため、すべての行が2行目の比較結果で判定されます。

適用範囲の先頭行と数式の行番号を合わせる

適用範囲がC2から始まる場合は、数式も2行目から始めます。

正しい組み合わせは次のとおりです。

  • 適用範囲:C2:C100
  • 数式:=$B2>$C2

数式を=$B3>$C3にすると、C2に対してB3とC3を比較するため、判定が1行ずれます。

適用範囲の最初のセルがC2なら、数式もB2とC2から始めてください。

文字を赤色・太字に設定する

数式を入力したら、条件を満たしたセルの表示方法を設定します。

  1. 「書式」を選ぶ
  2. フォントの色を赤にする
  3. フォントスタイルを太字にする
  4. 「OK」を選ぶ
  5. もう一度「OK」を選び、ルールを確定する

条件付き書式のルールでは、「書式」から条件を満たしたセルのフォントや塗りつぶしなどを設定できます。

今回は、背景色を変更せず、文字だけを赤色・太字にします。

完成後に赤字になるセルを確認する

今回の元データでは、商品Aと商品Cの今週の数字が前週より少なくなっています。

完成後の結果は次のとおりです。

商品前週今週判定
商品A2015前週より少ない
商品B1822対象外
商品C3025前週より少ない

C2とC4だけが赤字・太字になれば、今回の設定は完成です。

商品Bは、今週の数字の方が大きいため、書式は変わりません。

数式を入力して終わりにせず、実際にどのセルへ書式が付いたかまで確認してください。

比較する条件を変える場合の数式

赤字にする条件を変えたい場合は、数式の比較記号を変更します。

赤字にする条件数式
B列がC列より大きい=$B2>$C2
C列がB列より大きい=$C2>$B2
B列とC列が同じ=$B2=$C2
B列とC列が違う=$B2<>$C2

どちらの列を赤字にする場合でも、最初に選択した範囲へ書式が付きます。

たとえば、B列を赤字にしたい場合は、B2:B100を選択してからルールを設定します。

数式の比較条件だけを変えても、選択した範囲は変わりません。

空白行を赤字にしたくない場合

空白を含む表では、数字が未入力のセルにも意図しない書式が付く場合があります。

B列とC列の両方に数字が入っている行だけを対象にする場合は、次の数式を使います。

=AND($B2<>"",$C2<>"",$B2>$C2)

AND関数は、指定した条件がすべて成立した場合にTRUEを返し、一つでも成立しない条件がある場合はFALSEを返します。

参考:AND関数|Microsoftサポート

今回の数式は、次の3条件をすべて満たす行だけを赤字にします。

  • B列が空白ではない
  • C列が空白ではない
  • B列がC列より大きい

空白行がない表では、通常の=$B2>$C2で問題ありません。

まとめ|赤字にする列を先に選び、同じ行の2列を比較する

前週より今週の数字が少ない場合に、今週の数字を赤字・太字にする設定は次のとおりです。

  • 適用範囲:C2:C100
  • 数式:=$B2>$C2
  • 書式:文字色を赤、フォントを太字

最初に赤字にしたいC列を選び、数式では同じ行のB列とC列を比較します。

ドル記号は列の前だけに付け、行番号は固定しません。

適用範囲の先頭行と、数式の行番号もそろえる必要があります。

完成後に、条件に合うセルだけが赤字になっていれば設定完了です。

次に読む記事

数式と適用範囲を設定しても色がつかない、別の行へ色がつく、一部のセルにしか反映されない場合は、次の記事で原因を確認してください。

適用先、数式の基準行、ドル記号の位置、TRUE・FALSE、複数ルールの順に確認すると、どこで設定がずれているかを切り分けられます。

Excelの条件付き書式が反映されない原因|数式・範囲・列固定の確認順

※本記事にはアフィリエイト広告が含まれる場合があります。
収益の有無に関わらず、読者目線での体験や生活に役立つ情報を最優先に執筆しています。

Excel・数字整理

コメント