
たとえば、セルに月を入力するときに、1 日目から月の最終日までの特定の日付を取得しようとしています。
セル「I6」に「3月」などの月が含まれている場合:
" MARCH "
それから:
- セル「F10」 = 1-Mar for-太陽(毎月第一日曜日)
- セル「F11」 = 5-Mar、-Thur (その月の最初の木曜日)
- セル「F12」 = 8-Mar -太陽(毎月第2日曜日など)
- セル「F13」=12-Mar、-Thur
これは可能ですか? さまざまなサイトを調べましたが、見つかりません。どうもありがとうございます。
答え1
これも使用できます:
使い方:
- セル に
K23
、月の最初の日付を入力します ( を使用したように02/01/2020
、形式は ですMM/DD/YYYY
)。 MMM YY
セルに適用します。- セル内の数式
K25
:
=K$23+MOD(7-WEEKDAY(K$23,2),7)
- 次に、セル内の数式
K26
:
=K$23+MOD(4-WEEKDAY(K$23,2),7)
注意:上記の式では、7
& は4
日曜日と木曜日を表しており、必要に応じて編集できます。
セルの最終式
K27
と下方向への記入:=IFERROR(IF(AND(MONTH(K26)=MONTH(K$23),COUNT(J$25:J25)=7),"",K25+7),"")
次に、この数式をセルに入力して
J25
下方向に塗りつぶします。
=IF(ISBLANK(K25),"",K25)
編集済み:
OPは、日付を管理する方法について良い点を指摘しました。ス日曜日 &T木曜日は8以上(5月、8月は日曜日が5日、木曜日が4日です)。
セルに次の数式を入力します
L25
:=SUMPRODUCT(N(TEXT(ROW(INDIRECT(K25&":"&EOMONTH(K25,0))),"ddd")="Sun"))+SUMPRODUCT(N(TEXT(ROW(INDIRECT(K25&":"&EOMONTH(K25,0))),"ddd")="Thu"))
注意 これには日曜日と木曜日がカウントされます。Sun
これらはThu
編集可能です。
- 式
K27
:
=K$25+MOD(7-WEEKDAY(K$25,2),7)
- セル内の数式
k28
:
=K$25+MOD(4-WEEKDAY(K$25,2),7)
セルに数式を入力してください
K29
:=IFERROR(IF(AND(MONTH(K28)=MONTH(K$25),COUNT(J$27:J27)>=(L$25-1)),"",K27+7),"")
注意
- セル内の数式で MONTH チェックと ROW COUNT を使用すると
K27
、K29
Excel はすべての日曜日と木曜日の DATE のみを生成するように制限されます。 - 必要に応じて、セル
K23
または の日付と年を変更し続けますK25
。 - 必要に応じて数式内のセル参照を調整します。
答え2
したがって、この問題は次の 2 つの部分に分けることができます。
条件付き書式
あなたが望むこと:
cell "F10" = 1-Mar for- Sun (first Sunday of the month)
A6
含むことに基づくMARCH
したがって、セルF10に次のように配置できます。
=IFERROR(IF(FIND("MARCH",A6)<>0,"contains March","Does not contain march","")
=Find("MARCH",A6)
「MARCH」が見つからない場合はエラーが発生します=IFERROR()
。これが を使用する理由です。エラーがない場合は正常に見つかったことを意味し、必要なロジックを適用します。
毎月第一日曜日
月の最初の日曜日を見つけるには、次の式を使用します。
'=(A4+CHOOSE(WEEKDAY(A4,1),7,6,5,4,3,2,1))'
私の場合、A4 は参照する日付で、次の日曜日に進み検索します。このメソッドを最初に入力すると、必要な結果が得られるはずです。
セル A11、A12、A13 に関しては、まったく同じ方法に従うことができます。
答え3
試す:
F10: =DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))+7-WEEKDAY(DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))-1)
F11: =DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))+7-WEEKDAY(DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))-5)
F12: =F10+7
F12
必要なところまで選択して記入してください
G10: =F10
カスタムフォーマットG10
:"dddd"
G10
必要なところまで選択して記入してください
注記:月によっては、最初の木曜日が最初の日曜日より前に来ることがあります。最初の木曜日または最初の日曜日の早い方から始めて、その後シーケンスを続ける場合は、次の式を使用します。
F10:=MIN(DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))+7-WEEKDAY(DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))-1),
DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))+7-WEEKDAY(DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))-5))
F11: =MAX(DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))+7-WEEKDAY(DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))-1),
DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))+7-WEEKDAY(DATEVALUE("1/"&I6 & "/" & YEAR(TODAY()))-5))