●今回の関数は?
Date 関数【をつかったカレンダー】を作ります
あっ! ちなみに Excel Tips の目次です ⇒ 目次
●どんな時に使う?
カレンダーを作ってみました。
これは、今月のカレンダーです。
色とかはマニュアルで付けましたが、カレンダーの数字は全て数式で導き出しています。
上に[年⇒]と[月⇒]の右に2021と6が入力されています。
ここに、好きな年と月を入力すれば、瞬時にその月のカレンダーが表示されます。
これは来月、7月のかれんだーです。
これは、私の生まれた1962年8月のカレンダーです。
23日生まれですから、〇を付けてみました
私は木曜日に生まれたんですねー(笑)
初めて知りました
これは、今世紀末はどうなんだろう?って
多分、このブログを読んでくださっている方で、このカレンダーがひつようとなる人は、おそらく3.8%ぐらいでしょう(冗談です(笑))
●どうやって作る?
カレンダーを作るのは簡単です。
まず
(1)求めたい月の1日は何曜日かを求める。
(2)最終日は何日かを求める。
(3)(1)で求めた曜日から最終日まで、1ずつ足していく
で終わりです。
本当でしょうか
つくってみると、意外に面倒くさい判断とかが入ってくるんですよね。
なので、こんな感じにしてみました。
結構、複雑な関数式になっちゃいました
一週目の日曜 =IF(WEEKDAY(DATE($D$2,$D$3,1))=CELL("col",C6)-2,1,"")
一週目の月曜 =IF(TRIM(C6)="",IF(WEEKDAY(DATE($D$2,$D$3,1))=CELL("col",D6)-2,1,""),C6+1)
二週目の日曜 =I6+1
二週目の月曜 =C7+1
五週目の日曜 =IF(MONTH(DATE($D$2,$D$3,I9+1))<>$D$3,"",I9+1)
五週目の月曜 =IF(TRIM(C10)<>"",IF(MONTH(DATE($D$2,$D$3,C10+1))<>$D$3,"",C10+1),"")
二週目から四週目は、前の日に1を足すだけで良いので、めちゃ簡単なんですがね。
ちょっと、これは最低やなって思って、もっと簡単な方法はないかなって考えてみました。
すると
(1)第一週の日曜日は何日になるか算出する。
(2)日付形式で第一週目の日曜日に入力する。
(3)第六週の土曜日まで、順次前の日に1を足す。
(4)条件付き書式で、各セルの月の値が指定された月と違っていたら文字色を白にする。
すると、初日だけちょっと複雑ですが、その後は+1のみ
一週目の日曜日 =DATE($D$2,$D$3,1)-WEEKDAY(DATE(D2,D3,1))+1
一週目の月曜日〜 =C6+1
で、条件付き書式で指定付き以外の文字を白色にする前はこんな感じです。
前月の最後の方と、次月の最初の方が混在していますよね。
ただ、各セルは年とか月の情報も持っていますので、ここから、(4)の処理を施します。
すると・・・
そりゃ同じになりますわな(笑)
でも、微妙に違うところが有るんです
どこか分かりますか?
バックをクリーム色にした日曜日・・・文字を白にしたので、うっすらと見えちゃってます。
このぐらいは気にしない気にしない!一休み一休み!
【このカテゴリーの最新記事】
-
no image
-
no image
-
no image