システムメンテナンスのお知らせ

毎回お世話になります。
もう一度週のことで教えて頂きたいです。C2~AG2 に
1~31(日付)
C3~AG3に
月曜~日曜(曜日)
=C2 =D2…=AG2
という式を入れて曜日をC3~AG3に表示させるようにしてます。


月の第何週なるかをもとめたいです。
2021 2/1~2/6 は0週目
2021 2/7~2/13 1週目


2021 8/1~8/7 1週目

日曜から数えたいです。

8/1みたに1日が日の場合は1日が第1週

2月みたいに日始まりではない月は第0週
2/7日が1週

と答えが出来ようにしたです。

答えの場所C29~AG29
=IF(C2="","",WEEKNUM(C2)-WEEKNUM($C$2)+1)
の式を入れたのですが、2/1~6までも1 8/1も1となってしまいます。

どのように直せばいいかご教示お願いしたいです。
よろしくお願いいたします。

gooドクター

A 回答 (4件)

こんにちは



>2月みたいに日始まりではない月は第0週
というところが、普通の数え方とは異なっているようです。
ご提示の式は、一般的な週の数え方を求める式になっていると思います。

2/1~6は0になるようになさりたいものと解釈しました。
その分を調整して、
=IF(C2="","",WEEKNUM(C2)-WEEKNUM($C$2)+(WEEKDAY($C$2)=1))
では、いかがでしょうか?
    • good
    • 0
この回答へのお礼

この度は本当にありがとうございました。

出来ました。

理解していただき感謝致します。

お礼日時:2021/01/26 14:18

添付の画像のようなイメージで良いんですよね?


であれば、当該日付以前の”日”の個数をカウントすれば行けちゃいそうな気がします。

C4セルには、下記の式が設定してあります。
【C4セル】=COUNTIF($C3:C3,"日")

なお、曜日はセルの書式設定ではなく、次の式で表示されている必要があります。
【C3セル】=TEXT(C2,"aaa")
「第何週かもとめる式」の回答画像4
    • good
    • 0

WEEKNUM関数は年初日を第1週として、対象日が第何週に属するかを返す関数です。



No.1さんのご指摘のとおり、月初日を基準として、その月の第1週とするのが一般的です。

しかし、ご質問者のお考えは、

>2021 2/1~2/6 は0週目
>2021 2/7~2/13 1週目
>2021 8/1~8/7 1週目
>日曜から数えたいです。

ということです。

これは、月が替わっても、WEEKNUM関数で属する週が変わらなければ0週とし、変ったところで第1週と数えるということに他なりません。

従って、ご希望の値は

=IF(C2="","",WEEKNUM(C2)-WEEKNUM(EOMONTH($C$2,-1)))

で求められます。
    • good
    • 0

>月の第何週なるかをもとめたいです。



月の何週目という言葉の定義はありませんので、
スレ主さんが望む定義をしてください。
一般的には通用しないので、スレ主さんだけが使ってください。
    • good
    • 0
この回答へのお礼

ご教示ありがとうございます。^^

お礼日時:2021/01/26 14:19

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

このカテゴリの人気Q&Aランキング