Excelでカレンダーを作るのが楽しい話
Excelでカレンダーのテンプレートがあるらしいのだが、家の旧時代パソコンのExcelにはそのようなテンプレートはない
関数を使いながら自分で作るのもまた楽しやところが関数が頭に入っているわけではない
都度ググって出てきたページを見ながら作るのが(コスパが悪いが)良い
やはりコスパが悪いので自分で見る用に書いておきます
2023年1月のカレンダーを作ります
①セルに「年」「月」「曜日」を入力する
| A | B | C | D | E | F | G | H |
| 1 | 2023 | 日 | 月 | 火 | 水 | 木 | 金 | 土 |
| 2 | 1 | | | | | | | |
| 3 | | | | | | | | |
②DATE関数で「X年X月1日」を設定する(A3)
| A | B | C | D | E | F | G | H |
| 1 | 2023 | 日 | 月 | 火 | 水 | 木 | 金 | 土 |
| 2 | 1 | | | | | | | |
| 3 | =DATE | | | | | | | |
(A3)=DATE(A1,A2,1)
③WEEKDAY関数で「X年X月1日」の曜日を呼び出す(A4)
| A | B | C | D | E | F | G | H |
| 1 | 2023 | 日 | 月 | 火 | 水 | 木 | 金 | 土 |
| 2 | 1 | | | | | | | |
| 3 | =DATE | | | | | | | |
| 4 | =WEEK | | | | | | | |
(A4)=WEEKDAY(A3,
1):
種類 1(日曜=1~)、2(月曜=1~)、3(月曜=0~)
(2023年1月1日は日曜なので、(A4)には1が表示される)
④このカレンダーの最初の日曜日の日付を表示する(B2)
月の残りの日を埋める(C2)(B3)(C3)(B3:H3)
| A | B | C | D | E | F | G | H |
| 1 | 2023 | 日 | 月 | 火 | 水 | 木 | 金 | 土 |
| 2 | 1 | =A3-(A4-1) | =B2+1 | =C2+1 | =D2+1 | =E2+1 | =F2+1 | =G2+1 |
| 3 | =DATE | =H2+1 | =B3+1 | | | | | |
| 4 | =WEEK | | | | | | | |
(B2)=A3-(A4-1):yyyy/mm/1-(曜日の数-1)
(X年X月1日から1日を含めて曜日分戻った日付を表示する)
(曜日の数:日曜日=1/月曜日=2/火曜日=3/水曜日=4/木曜日=5/金曜日=6/土曜日=7)
(C2)=B2+1、オートフィル(横)
(B3)=H2+1,(C3)=B3+1、オートフィル(横)
(B3:H3)選択→(H7まで)オートフィル(縦)
(6週ある月があるので、2~7行目までの6行で表示するようにする)
⑤セルの書式設定(表示形式)で年月を非表示にし、日だけの表示にする(B2:H7)
(B2:H7)選択→セルの書式設定を開く([Ctrl] + [1]) →ユーザー定義→種類(T):[d ]→OK
⑥当月以外の日付を非表示(白色)にする(B2:H7)
(B2:H7)条件付き書式→新規ルール→数式を使用して書式設定する
ルールの内容を編集してください(E):
[=MONTH(B2)<>$A$1 ]→書式(F)→フォント→色(C):白を選択→OK
ほぼ完成
これでA1とかA2の数字を変えて日付が変わるのが気持ちいい
あと一般的なカレンダーでは土日色付けとか祝日色付けとかある
祝日のやつは今までやったことはないですが、そのうちやってみたいです
今回作ったのは、今月からの2年間カレンダーで
年=今年=YEAR(TODAY())
月=今月=MONTH(TODAY())
「X年X月1日」を設定するときに
①もし前の月が12月、だったら翌年、じゃなかったら今年
=IF(A*=12,DATE(R*,A*,1),DATE(A*,A*,1))
②一か月後
=EDATE(D*,1)/(開始日,月)
次月を設定するときに12月の次には1月を表示する
=MOD(A*,12)+1/(数値:割られる数,除数:割る数)+1
(今月を12で割った余りに1を足す)
以上を組み合わせています
余りの性質を利用してローテーションするとかいうMOD関数よく分からない
ExcelマスターがいたらMOD関数について教えてください