Spreadsheet演習 | 徒然なる

徒然なる

以前は(現在、私は幸せを引き寄せている最中です。そしてそれは、かなりいいところまで来ています。)

現在は、私は引き続き幸せを引き寄せ続けている最中です。
それは今まで気がつかなかっただけで、幸せはいつも身近にあるのでした。


徒然なる
普通のカレンダーを設計してみる。


仕様:通常の横型のカレンダー、年、月は固定、変更するとそれに応じたカレンダーが表示される。


アルゴリズム

日曜日から曜日を記入する

曜日を記述した以下の行から1行目とする。


カレンダーの大きさ

2月は1日が日曜の場合28日は土曜日になるので5行目から月末の式を記入する。

1日が土曜日と想定すると、カレンダーの行数は6行必要となる。


計算式

1日は何曜日なのか、人はどのようにして曜日を求めるのか。


月初めの式

1日の判断は、曜日の行の下に夫々の曜日を判断して、その曜日であれば1を記入。

1行目の日曜日のセルだけが違う記述だがそれ以外は同じ。

以降は、前のセルが空白なら、式を実行せず空白を出力する。

2行目からは「前のセル+1」の式



月末の式

=MOUNTH()関数で、前日+1の結果と、月の入っているセルを比べて(IF関数)同じなら、前のセル+1。

違う場合は、月末以降なので空白のセルとする。

前のセルが空白なら、空白を出力。


ま、大雑把だがこんな感じで万年カレンダーが出来るはず。


イラストは、GoogleDocumentsのSpreadsheetで作ってみました。