条件付き書式を使った色付けはExcelの基本操作の一つです。特定のセルや文字に色付けする、入力すると行全体の色が変わる、土日を色分けするなど、書式の色で視認性を高め、強調する方法はいろいろあります。本記事では、自動で色付けする条件付き書式の設定方法を詳細に分かりやすく解説します。
列ごとに条件付き書式を設定して色付けする
列ごとに条件付き書式で平均値以上と最大値に色付けする例を解説します。実装は比較的簡単です。
-
列ごとの平均値以上に色付け
- 平均値以上に色付けする最初の列のセル範囲を選択して、
- 「ホーム」タブ➔「条件付き書式」➔「上位/下位ルール」➔「平均より上」をクリックします。
- 「平均より上のセルを書式設定」が開いたら、プルダウンメニューで背景色・文字色を組み合せた書式の一覧を引き出して選択します。
- 平均値より上の数値が入ったセルに塗りつぶしの薄い緑色が付き、文字の色も濃い緑に変わりました。
-
列ごとの最大値に色付け
- 最大値に色付けする最初の列のセル範囲を選択して、「ホーム」タブ➔「条件付き書式」➔「上位/下位ルール」➔「その他のルール」をクリックします。
- 「新しい書式ルール」が開き、「上位または下位に入る値だけを書式設定」が選択されていることを確認して、ルールの内容を「上位」「1」に設定、「書式」ボタンから塗りつぶしや文字色を選択して「OK」します。
- セル範囲の最大値のセルと数字に書式が反映されました。
条件付き書式のコピーで、適用する参照先が固定されて相対参照にできない
上で設定した条件付き書式を他の学科の列にもコピーしたいと思いますが、列ごとの条件付き書式をコピーする際にうまくいかないことが多いので、その事例と対処法を解説します。
最初に条件付き書式を設定した列のセル範囲をオートフィルコピーして「書式のみコピー(フィル)」をチェックすればいいじゃないかと思うかもしれませんが、列ごとに設定する場合だと「全科目の平均値より上」のセルに色が付き、列ごとの平均は無視されます。最大値ではセル範囲全体の最大値のみに書式が適用されてしまします。
それなら適用する参照先の行番号を相対参照に変えてコピーすれば良さそうですが、条件付き書式では「適用先」の範囲は固定されてしまい、絶対参照から相対参照に変更できないので、これもうまくいきません。
少し手間ですが、「ルールの管理」で複製するか、「書式のコピー/貼り付け」ボタンを使って条件付き書式をコピーしましょう。
列ごとの条件付き書式を「書式のコピー/貼り付け」ボタンでコピー
- 条件付き書式が設定されているセル範囲を選択し、「ホーム」タブの左端にある「書式のコピー/貼り付け」ボタンをダブルクリックします。
- マウスポインタが刷毛の形になったら、隣の列のセル範囲をドラッグして条件付き書式をコピーします。
- 他の列ごとに同じ動作を繰り返して条件付き書式をコピーします。
条件付き書式がちゃんとコピーされたかを確認します。
「ホーム」➔「条件付き書式」➔「ルールの管理」をクリックしてダイアログボックスを開き、「書式ルールの表示」を「このワークシート」に切り替えると、シート上の条件付き書式がリスト表示されます。この例では「平均より上」の条件付き書式が列ごとに5つ並んでいます。
列ごとの条件付き書式を「ルールの管理」でコピー
「書式のコピー/貼り付け」ボタンでコピーする場合、もし他の書式も設定されていたら一緒にコピーされます。
他の書式を除外して、条件付き書式のみをコピーしたい場合は、「ルールの管理」ダイアログで、該当する条件付き書式を選択して「ルールの複製」ボタンをクリックします。複製された条件付き書式の適用先を指定し直します。
この操作を列ごとに繰り返して、条件付き書式を全列にコピーします。
日付が入力されたら自動で行全体をグレーアウトさせる
ネット商取引の表で決済の日付が入力されたら、自動でその行全体をグレーアウトさせる設定を条件付き書式で実装してみましょう。
この例題のポイントは行ごとに条件付き書式を設定するのではなく、表の全体に設定するということです。
- 表全体のセル範囲を選択して「ホーム」➔「条件付き書式」➔「新しいルール」をクリックしてダイアログボックスを開きます。
- 「新しい書式ルール」が開いたら、ルールの種類で「数式を使用して、書式設定するセルを決定」を選択、数式を =$F2:$F11<>“” と入力します。「決済日に何も入力されていなければ」という意味の数式で、決済日のセル範囲はF4キーを2度押して行だけ相対参照にしておきます。
- 「書式」ボタンから「塗りつぶし:ライトグレー」「フォント色:グレー」を設定します。
- 決済日の日付が入力された行全体がグレーアウトしました。
- 他の行に日付を入力して条件付き書式が正しく動作していることを確認します。
この例の場合は行ごとに条件付き書式を設定する必要がないので、最初の行に設定したらオートフィルコピー➔「書式のみコピー(フィル)」をチェックでもOKです。
日付が入力されたら特定の文字を含む隣のセルの文字色を変える
以下の表の「ステータス」の列には、3つの文字列を分けて表示させるIF関数「=IF(F2<>“”,IF(F2<=E2,"完了","延滞"),"未入金")」が入っています。
支払期限より前に決済の日付が入力されたら隣のセルに「完了」、期限を過ぎて入力されたら「延滞」、未入力なら「未入金」と自動で表示されます。
日付を入力してIF関数が実行されると、表示された文字列に応じて隣のセルの塗りつぶしの色や文字色が変わる設定を条件付き書式で行います。
- IF関数が入った列のセル範囲を選択して、「条件付き書式」➔「ルールの管理」をクリック、「ルールの管理」ダイアログが開いたら、「新規ルール」をクリックします。
- 「新しい書式ルール」ダイアログのルールの種類で「指定の値を含むセルだけを書式設定」を選択、「次のセルのみを書式設定」で左から「特定の文字列」「次の値を含む」を選択し、一番右に「完了」と入力します。セルの塗りつぶしや文字色の書式を設定して「OK」。
- 「ルールの管理」に戻り、作成したルールを「ルールの複製」をクリックして2つ複製します。
- 複製した一つ目のルールを選択して「ルールの編集」をクリックします。
- 「書式ルールの編集」で「完了」を「延滞」に入力し直し、書式を設定し直します。
- 複製した二つ目のルールを選択して「ルールの編集」をクリック、「完了」を「未入金」に入力し直し、書式を設定し直します。
- 「ルールの管理」の「適用」ボタンをクリックして、条件付き書式がうまく動作しているか確認して閉じます。
未入力の行に日付を入力すると、隣のセルの表示と塗りつぶし・文字色が変わります。