見出し画像

来週の月曜日を求める関数〜日付関数に関してあれこれ、日付関数チートシート(自作)、ノンプロ研の皆さんいつもありがとう

関数の書き方は色々あるよ
これをネタにキャッキャっウフフするノンプロ研て楽しいよ
このnoteはノンプロ研のその会話でできてるよ
ノンプロ研の皆さんいつもありがとう

っていう話。

自分の理解と備忘録のためにも書いている。

なお、関数の動作はスプレッドシートで確認しています。
Excelも似たような、同じようなもんですかね、知らんけど。


来週の月曜日を求める関数

で、まあ色々考えたり、教えてもらったりして、書き方は色々あるよねっていう。Twitterでコメントくださったり、Slackでメッセージくださったり、みなさん本当にありがとうございます!

WEEKDAY関数

=(TODAY()+9-WEEKDAY(TODAY(),1))
=(TODAY()+7-WEEKDAY(TODAY(),3)) 
=(TODAY()+7+(2-WEEKDAY(TODAY(),1))) 
https://support.google.com/docs/answer/3092985?hl=ja より


 =(TODAY()+7-WEEKDAY(TODAY(),3)) 
これを例にすると
例えばTODAY=1/29(日)だとして
+7で来週の日曜になりますわね。

で、WEEKDAYの第1引数をTODAYにし、第2引数の種類3により月曜から0で数え始めることで、ここでは1/29(日)=6になる。
WEEKDAY(TODAY(),3) = 6 になるというわけ。

ということは

=(TODAY()+7-WEEKDAY(TODAY(),3)) 
=(TODAY()+7-6) 
=(TODAY()+1) 
となるので、今日が1/29(日)の場合は、次の日1/30(月)が求められる、といわけだ。

常に今日を基準として、TODAYを可変しつつ、WEEKDAYで求める曜日の数字も可変するという仕組みだ。

別の書き方 MOD、NOW

=NOW()+7-MOD(NOW()-2,7)

モジュロ演算って何。

https://wa3.i-3-i.info/word15336.html

はーん、剰余ね?偶数奇数求める時によく使う%ね?

で、 =NOW()+7-MOD(NOW()-2,7)  を考えてみる。


NOW() は、パソコンのシステム日付と時刻を返す、 2023/01/29 13:34:32  

みたいに。

NOW()+7で来週になる。1/29(日)だとして
+7で来週の日曜になりますわね。

MOD(NOW()-2,7)

NOW()-2, で二日前になる。
1/29(日)だとして
-2で1/27(金)になりますわね。

ここで力尽きた。うまく書けそうになったらあとで書こう。

曜日の始まりとは?

日曜始まり?月曜始まり?という素朴な疑問。
神は天地創造して七日目に休息したんだっけ?


日付関数チートシート

作ってみた。なんか間違いとか、おかしなところがあったら教えてください。

使いたい人は適当にコピーしてください。編集リクエストを頂戴しても一切無視します。
これを使用したことにより生じたいかなる事象に対しても責任を負えませんので悪しからず。

ノンプロ研について

べつに回し者ではないんですが…お世話になっておりますのでご紹介。

紹介特典でAmazonギフトカード貰えるので、ご興味ございましたらお気軽にご連絡ください〜

連絡先Twitter https://twitter.com/a03


今回、来週月曜を求める関数について、ノンプロ研のSlackでラフに話題を振ってみたところ、こんな感じで盛り上がってくれたのでした。嬉しい。こんな感じでキャッキャウフフと談義できるのがノンプロ研のありがたいところです。





というわけで、みなさんいつもありがとう!!!
わしはこうして、ぶつぶつネットの海に放流するくらいしかできんけん。


#スプレッドシート
#関数

いただいたサポートで、書籍代や勉強費用にしたり、美味しいもの食べたりします!