条件付き書式については こちら などでもご紹介していますが、今回は予定表やカレンダーを曜日によって色分けをしたい、という場合のお話です。
ちなみに今回は C 列に「祝祭日」という記載があるタイプでご紹介しています。(記載がないタイプはその 2 で書く予定です。)
完成イメージはこちら↓
土日に色をつける
B 列の値が「土」だった場合に、表の行に塗りつぶしの色を適用するためのルールを作成します。
- 条件付き書式を設定するセル範囲を選択して、リボンの [ホーム] タブの [スタイル] グループの [条件付き書式] をクリックし、[新しいルール] をクリックします。
- [新しい書式ルール] ダイアログ ボックスの [ルールの種類を選択してください] で [数式を使用して、書式設定するセルを決定] を選択します。
[ルールの内容を編集してください] の [次の数式を満たす場合に値を書式設定] に、B 列のセルの値が “土” かどうかを確認するための数式を入力して、[書式] をクリックします。
B 列の値が “土” かどうかを確認するための数式→「=$B2="土"」
当たり前だけれど、曜日が記載されているのが B 列でないのなら、対応できるように列番号を考えてくださいね。
今回書式を設定したいのは A ~ D 列までの 4 列、行は 2 ~ 32 行目です。
まずは、選択しているセル範囲の 1 行目のことを考えます。1 行目 (セル範囲 A2 から D2) のことを考えると、どのセルから参照してもセル B2 の値が “土” かどうかで判断させたいので、「B 列」を固定するために「$B2」としています。
行番号である「2」を固定しないのは、3 行目以降にも書式を適用したいからです。
たとえば「$B$2」のように行番号も固定してしまうと、3 行目以降もセル B2 の値で判断してしまうので、求めている結果になりません。
- [セルの書式設定] ダイアログ ボックスの [塗りつぶし] タブを選択して任意の色を選択して [OK] をクリックします。
文字の色を (も) 変えたいのであれば、[フォント] タブで色を選択してください。
- [新しい書式ルール] ダイアログ ボックスのプレビューで書式を確認して [OK] をクリックします。
- 選択していたセル範囲に条件付き書式が設定されます。
B 列の値が “土” の行 (セル) に書式が適用されます。
なお、土曜日と日曜日の色を分けたいのなら 1 つずつ条件を追加していくとよいです。
1 つのセル範囲には複数の条件付き書式を設定できます。
土曜日の色が設定できたら、再度手順1.からの操作を繰り返して、[新しい書式ルール] で「=$B2="日"」というルールを作成して追加すると、日曜日の行の設定もできますね。
祝祭日に色をつける
祝祭日や組織特有のお休みにも色をつけたいというとき、条件付き書式のルールの作り方はいろいろあります。
ここでは、C 列に「祝祭日」という列を用意し、祝祭日やお休みの場合にこちらに文字列を入力すると色がつくように設定することを例にご紹介します。
- 条件付き書式を設定するセル範囲を選択して、リボンの [ホーム] タブの [スタイル] グループの [条件付き書式] をクリックし、[新しいルール] をクリックします。
- [新しい書式ルール] ダイアログ ボックスの [ルールの種類を選択してください] で [数式を使用して、書式設定するセルを決定] を選択します。
[ルールの内容を編集してください] の [次の数式を満たす場合に値を書式設定] に、C 列のセルの値が文字列かどうかを確認するための数式を入力して、[書式] をクリックします。
C 列の値が文字列かどうかを確認するための数式→「=ISTEXT($C2)」
- [セルの書式設定] ダイアログ ボックスの [塗りつぶし] タブを選択して任意の色を選択して [OK] をクリックします。
文字の色を (も) 変えたいのであれば、[フォント] タブで色を選択してください。
- [新しい書式ルール] ダイアログ ボックスのプレビューで書式を確認して [OK] をクリックします。
- 選択していたセル範囲に条件付き書式が設定されます。
C 列の値が文字列の行 (セル) に書式が適用されます。
- たとえば、組織特有のお休みなどがあった場合には、C 列に文字を書き込めば書式が適用されます。
今回の例の場合は、ISTEXT 関数を使って C 列の値が文字列かどうかを判定しています。
「空白ではない場合」としたいのなら「=NOT(ISBLANK($C2))」でもよろしいかと。
おまけ
祝祭日は日曜日と同じ色にしたいのならば、条件付き書式を 1 つにまとめるのもありですね。
OR 関数を使って、B 列の値が “土” または C 列の値が文字列の場合に書式を適用する、とするならば、
「=OR($B2=”日”,ISTEXT($C2))」とします。
土日はできるよ、祝祭日のやり方がわからないんだよ、という方が多いのだと思います。
よくあるやり方は祝日の一覧を作っておいて・・・っていう方法だと思うのですが、カレンダーの形や数などにもよりますが、私は今回の方法を使うほうが多いかな。
石田 かのこ