Deprecated : The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
条件付き書式で土日に色を付ける:Excel基本講座
Home »
Excel講座の総目次 »
Excel基本講座の目次 »
条件付き書式で土日に色を付ける
勤務表などカレンダーを作成して、土日や祝日の部分に色を付けて見やすくしたいと思います。
このページでは日付がシリアル値で入力されているケースについて書いてみます。
更新:2021/12/25;作成:2019/12/12
カレンダーを作成する Topへ
ここでは簡易なカレンダーを作成します。(2021/9/8に追記しました)
C列の数式が A列のセルに入力されています。
A2セルには 2020/10/1 と作成する月の1日目の日付を入力します。
このセルの日付を変更することで、その月のカレンダーが表示されます。
表示形式を yyyy"年"m"月" として年月だけを表示しています。
A3セルには =A2 と入力します。
A4セルには 2月や小の月には日にちを表示しないように
=IF(A3="","",IF(MONTH($A$2)<>MONTH(A3+1),"" ,A3+1))
と入力し、A33セルまでオートフィルでコピーしています。
2021/12/21に修正しました。A4セルから同じ数式に修正しました。
A4セルには =A2+1 と入力して、A28セルまでオートフィルでコピーしています。
A3:A33セルの表示形式は d"日"(aaa) としています。
日付の表示形式は [ホーム]タブの数値グループにあるダイアログボックス起動ツールをクリックして、セルの書式設定を表示します。
ショートカットキーは [Ctrl]+[1] です。(テンキーの 1 は不可)
[表示形式]タブの【分類】で「ユーザー定義」、種類を d"日"(aaa) にします。
条件付き書式を設定するセル範囲を選択します。
A3:A33セルを選択しています。 下図は説明上、8行目〜26行目を非表示にしています。
なお、説明上わかりやすいようにと思い、表示形式は m”月"d"日"(aaa) として日付と曜日が表示されるようにしています。
[ホーム]タブのスタイル グループにある[条件付き書式]→[ルールの管理]を選択します。
条件付き書式ルールの管理 ダイアログボックスが表示されます。
[新規ルール]ボタンをクリックします。
セルの値が土曜日と一致した場合に「薄い水色」を付けます。
「数式を使用して、書式設定するセルを決定」を選択します。
数式は =WEEKDAY(A3)=7 として、「書式」で塗りつぶしの色を「薄い水色」に設定しました。
WEEKDAY関数 で曜日を求めています。
=WEEKDAY(シリアル値)とした場合、日曜日が1で始まり、土曜日が7となります。
[書式]ボタンをクリックして、[塗りつぶし]タブで「薄い水色」を選択しました。
条件付き書式で土曜日の設定ができました。
右下の[適用]ボタンをクリックすると、シートにその条件が適用されますので、条件が正しく設定されているか確認します。
続けて日曜日の設定をしますので、[新規ルール]ボタンをクリックします。
セルの値が日曜日と一致した場合に「薄いオレンジ色」を付けます。
数式 =WEEKDAY(A3)=1 を入力して、塗りつぶしの色を「薄いオレンジ色」に設定しました。
[書式]ボタンをクリックして、[塗りつぶし]タブで「薄いオレンジ色」を選択しました。
土日のルールを設定できました。
[OK]ボタンをクリックします。
土日のセルに色を付けることができました。
2月を表示してみました。
ルールの数式にTEXT関数を使った例
上記の条件付き書式のルールではオーソドックスに、数式にWEEKDAY関数を使っています。
ここでは、数式をパッと見て土日がわかるようにTEXT関数を使ってみました。
数式は =TEXT(A3,"aaa")=" 土 " と =TEXT(A3,"aaa")=" 日 " としました。
祝日をExcelは判断できないので、祝日のリストを作成してそのリストで祝日か否かを判定する例を以下に示します。
まず祝日の表を作成し、名前を定義します。
例では、Sheet2の C3以降に祝日の日付を入力し、セル範囲 C3:C35 を選択して、名前ボックスに「祝日」と入力して、名前を定義しました。
カレンダーのリスト A3:A32セルを選択します。 [ホーム]タブのスタイル グループにある[条件付き書式]→[ルールの管理]を選択します。
土日の条件が既に設定されていますので、祝日の条件を追加して設定します。
[新規ルール]をクリックします。
祝日の条件を追加します。
数式 =MATCH(A3,祝日,0)>0 を入力し、セルの色を薄い赤色に設定しました。
[書式]ボタンをクリックして、[塗りつぶし]タブを選択しました。
今回は、[その他の色]ボタンをクリックして[ユーザー設定]タブで「薄い赤色」を選択しました。
祝日のルールが追加されました。
祝日のセルを塗りつぶすことができました。
祝日のリストが2021〜2022年でしたので、カレンダーを 2021/11 に変更しています。
条件1〜3を設定しましたが、条件1(最上段)が最優先になります。
条件を上段から順次チェックしていき、条件が「TRUE」になったら、そこで条件の処理を実行して終了すると考えればいいと思います。
条件付き書式のルールの優先順位を変更する方法
現在の条件付き書式のルールは下図のようになっています。
このルールの順番を入れ替えたいときは、入れ替えたいルールを選択して、[下へ移動]ボタンをクリックします。
[下へ移動]ボタンを2回クリックすると、下図のようになります。
土日の書式を祝日の書式より優先する
(例) 「祝日にも色を付けたい」で
条件1:土曜日ならパターンを薄い水色
条件2:日曜日ならパターンを薄いオレンジ色
条件3:祝日ならパターンを薄い赤
この様に設定した場合、土曜日で祝日なら薄い水色、日曜日で祝日なら薄いオレンジ色 になります。
祝日の書式を土日の書式より優先する
土曜日で祝日ならオレンジ、日曜日で祝日なら薄い赤 としたい場合は条件の順番を入れ替えます 。
条件1:祝日ならパターンを薄い赤
条件2:土曜日ならパターンを薄い水色
条件3:日曜日ならパターンを薄いオレンジ色
とします。
上の表で日にちだけの表示に変更したい場合は?
セルの値が日付のシリアル値であれば表示形式で「1月1日」「1月1日(月)」「1日(月)」・・・などいろいろな形式で表示できます。
表示形式については表示形式(ユーザー定義)の設定方法 をご覧ください。
セル範囲を選択します。
[ホーム]タブの数値グループにあるダイアログボックス起動ツールをクリックして、セルの書式設定を表示します。
ショートカットキーは [Ctrl]+[1] です。
[表示形式]タブの【分類】で「ユーザー定義」、種類を「d"日"(aaa)」にします。
行単位で色を付けたい場合は?
祝日のリストはC3:D5からG3:F5などへ移動しておきます。
カレンダーのリスト A3:A32セルを選択します。 [ホーム]タブのスタイル グループにある[条件付き書式]→[ルールの管理]を選択します。
条件付き書式の各ルールを選択して、[ルールの編集]ボタンをクリックして修正します。
祝日のルールは数式を =MATCH($A3 ,祝日,0)>0 と修正します。
土曜日の数式は =WEEKDAY($ A3)=7 と修正しました
日曜日の数式は WEEKDAY($ A3)=1 と修正しました。
条件付き書式ルールの適用先をクリックしてそれぞれ編集します。
適用先をすべて、=$A$3:$C$32 と複数列になるように修正します。
下図のようになりました。
祝日名を表示したい場合は、祝日リストを参照します。
Excel for Microsoft365 や Excel2021 の場合は、
=XLOOKUP(A3,Sheet2!$C$3:$C$35,Sheet2!$B$3:$B$35,"") としました。
以前のバージョンなら、=IFERROR(INDEX(Sheet2!$B$3:$B$35,MATCH(Sheet1!A3,Sheet2!$C$3:$C$35,0)),"") といった感じになります。
なお、祝日のリストの祝日名と日にちを入れ替えればVLOOKUP関数が使えます。
スポンサードリンク
よねさんのWordとExcelの小部屋 |Excel(エクセル)講座の総目次 |Excel(エクセル)基本講座の目次 |条件付き書式で土日に色を付ける
PageViewCounter
Since2006/2/27