回答:
クイック検索で見つけたものを次に示します。
一般的には、この式で月のn番目のxdayを取得できます
=DATE(B2,A2,1+7*n)-WEEKDAY(DATE(B2,A2,8-xday))
ここで、年はB2にあり、月(1〜12の数字)はA2にあり、xdayは曜日を表す数字(1 =日から7まで=土)であるため、第1土曜日は
=DATE(B2,A2,1+7*1)-WEEKDAY(DATE(B2,A2,8-7))
または第4木曜日
=DATE(B2,A2,1+7*4)-WEEKDAY(DATE(B2,A2,8-5))
私はこれを正しく読んでいるのであれば、2 回目の月の月曜日です
=DATE(B2,A2,1+7*2)-WEEKDAY(DATE(B2,A2,8-2))
これを正しく動作させることもできませんでした。私は、非常に複雑な(私のイディオム)方法を思いつきました。
A2 =月
B2 =年
C2 =曜日(
1-7、1 =日曜日)D2 =「数値」(3 = 3番目のxdayなど)
SO 2番目の月曜日は、A2 =現在の月、B2 =現在の年、C2 = 2(月曜日)、D2 = 2(2番目の月曜日)
F2 = =IF(MONTH(IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))=$C2,(VALUE(($A2&"/01/"&$B2)))+(($D2*7)-7),IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))<$C2,((VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+(($D2*7)-7)),(VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+7+(($D2*7)-7))))=A2,IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))=$C2,(VALUE(($A2&"/01/"&$B2)))+(($D2*7)-7),IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))<$C2,((VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+(($D2*7)-7)),(VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+7+(($D2*7)-7))),"error")
これを行うにははるかにクリーンな方法があると確信しています(IFの1つを反転させるとすでに気づいていますが、いくつかの複製を排除できます)。さらに、繰り返し式のほとんどは別々のセルに引き出して式をきれいにすることができます。しかし、私は他にどんな数式が利用できるかを研究する機会がなかったので、今のところそのままにしておきます。また、エラーチェックとわずかにきれいな結果を備えた、さらにugいバージョンを作成しました。しかし、ここに投稿するには複雑すぎます。
=DATE(YEAR(NOW()),MONTH(NOW()),1+7*2)-WEEKDAY(DATE(YEAR(NOW()),MONTH(NOW()),8-4))