excel:day_by_color
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン | |||
| excel:day_by_color [2022/10/02] – administrator | excel:day_by_color [不明な日付] (現在) – 外部編集 (不明な日付) 127.0.0.1 | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| + | ===== 曜日の自動表示と色分け ===== | ||
| + | ==== 曜日や土日祝の色分けを自動化 ==== | ||
| + | 生活と学習の記録の曜日や土日祝の色分けは、手作業でおこなっていたのですが、これを自動化してみたいと思います。色分けは、白黒印刷で使うので、ここでは土日祝の色の区別をしません。\\ | ||
| + | {{: | ||
| + | 最初にセルA1からA3まで、「年・月・日」と文字で入れます。\\ | ||
| + | セルA2とB2には、年・月を数字で入れます。\\ | ||
| + | セルC4から下向きに、1から連続した数字を31までオートフィルで入力します。\\ | ||
| + | {{: | ||
| + | セルD4には、「=DATE($A$2, | ||
| + | |||
| + | セルE3に「週末」と文字で入れます。\\ | ||
| + | セルE4に「=MAX(WEEKDAY(D4, | ||
| + | |||
| + | セルE4の数式を詳しく説明すると、\\ | ||
| + | 「WEEKDAY(D4)」で、日付を曜日の通し番号を返します。しかし、日曜日が1、月曜日が2、土曜日が7という通し番号になり、土日がつながりません。そこで「WEEKDAY(D4, | ||
| + | |||
| + | 「WEEKDAY(D4, | ||
| + | |||
| + | 「=MAX(WEEKDAY(D4, | ||
| + | |||
| + | 「=IF((WEEKDAY(D4, | ||
| + | |||
| + | ==== 曜日の自動表示と色分け ==== | ||
| + | 祝日のことは後まわしにして、曜日の自動表示と色分けをしたいと思います。 | ||
| + | |||
| + | セルF3に「祝日」、セルG3に「長期」、セルH3に「計」と文字で入れます。\\ | ||
| + | セルH4に「=SUM(E4: | ||
| + | {{: | ||
| + | セルJ4に「=C4」という数式を入れます。書式設定をしてからオートフィルをしたいので、数式にします。\\ | ||
| + | セルK4に「=DATE($A$2, | ||
| + | {{: | ||
| + | {{: | ||
| + | セルJ4とセルK4を選択し、条件付き書式を実行します。\\ | ||
| + | 「数式を使用して...」を選び、「=$H4> | ||
| + | {{: | ||
| + | あとは、セルJ4とセルK4をオートフィルを使って、下までコピーします。 | ||
| + | ==== 祝日の判定 ==== | ||
| + | 祝日の判定をしていきます。 | ||
| + | |||
| + | シート2に祝日を入れていきます。\\ | ||
| + | セルA2には、「=Sheet1!A2」を入れます。\\ | ||
| + | {{: | ||
| + | セルA4以下には、祝日名、セルB4以下には、月、セルC4以下には、日を入れます。\\ | ||
| + | セルD4には、「=DATE($A$2, | ||
| + | |||
| + | シート1に戻り、\\ | ||
| + | セルF4に、「=COUNTIF(Sheet2!$D$4: | ||
| + | {{: | ||
| + | セルF4をオートフィルを使って、下までコピーします。 | ||
| + | |||
| + | ==== 長期休業の色分け ==== | ||
| + | 長期休業の色分けをしたいと思います。ここまで自動化しなくてもいいと思うのですが、一応[パソコン講座]ですので。 | ||
| + | |||
| + | ちょっと気づいたのが、2020年度の3学期は2021年に変わることです。冬季休業は、年をまたぐので、1月は13、2月は14、3月は15と入力することで対処したいと思います。 | ||
| + | |||
| + | そのため、シート1のセルJ1の数式を「=MOD(B2-1, | ||
| + | {{: | ||
| + | 前回の祝日も置き換えます。なお、画像の成人式や天皇誕生日の振替休日は間違っています。確認してから使ってください。\\ | ||
| + | {{: | ||
| + | シート3に長期休業の一覧を作ります。開始日と終了日を入れると、長期休業中の日付一覧を自動作成します。この長期休業もこのとおりにはならないと予想されます。\\ | ||
| + | {{: | ||
| + | セルB8に「=DATE($A$2, | ||
| + | セルB9に「=DATE($A$2, | ||
| + | |||
| + | セルA10から下に0から始まる連続した数字をオートフィルで埋めておきます。\\ | ||
| + | セルB10に「=IF(B$9-(B$8+$A10)> | ||
| + | |||
| + | シート1のセルG4に「=COUNTIF(Sheet3!$B$10: | ||
| + | ==== 大の月、小の月の処理 ==== | ||
| + | ついでなので、大の月、小の月の処理も入れたいと思います。 | ||
| + | |||
| + | シート1のセルI4に「=IF(D4-EOMONTH(D$4, | ||
| + | EOMONTH関数は、その月の最終日を返します。日付から、固定したセルD4の最終日を引き算して、プラスになれば、次の月になっていると判断させます。\\ | ||
| + | {{: | ||
| + | {{: | ||
| + | あとは、条件付き書式で、日付の文字を白にします。画像では、背景と文字を灰色にしていますが、印刷時にエクセルが気を利かせて印字させてしまうので、文字を白にするのがいいでしょう。\\ | ||
| + | {{: | ||
