• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:日付が自動的に変わる関数は?)

日付が自動的に変わる関数は?

このQ&Aのポイント
  • 日付に関する関数について、わからないことがあります。
  • 左のセルには日付を入力し、右のセルにはその日付に応じた表示を自動的に行いたいです。
  • IFやDAYを使って試してみましたが、うまくいきません。何かアドバイスをいただけませんか?

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 こんな数式はどうでしょうか? =DATE(YEAR(A1),MONTH(A1)+(DAY(A1)>20),MOD(INT(DAY(A1+9)/10),3)*10+5) 表示は、書式で直してください。 書式「m/d」 あえて、テキスト表示する必要はないと思います。

hosino
質問者

お礼

すごい! ちゃんとなってる!! こちらで回答して下さっている皆さんの式もそうですが、 初心者の私には正しく答えが返ってくるのをみるたび、「すげぇ!」と 感心してしまいます。 他の方のと比べてシンプルな式ですね。 シンプルだけど、ちゃんと正しい答えが表示されてる。 シンプルだから、初心者の私でもこの式を使っていろいろ勉強出来る。 助かります。 ありがとうございました。

その他の回答 (5)

noname#79209
noname#79209
回答No.6

長ーい式になりますが、 A列に日付が入っているとして、 =EOMONTH($A1,(DAY($A1)<=20)*(-1))+((QUOTIENT(DAY($A1)-1,10)=1)+(DAY($A1)<=20))*10+5 A列とB列の表示書式は「日付型」にして下さい。 A列にどんな日付を入れても構いません。ただしシリアル値で入れて下さいね...

hosino
質問者

お礼

ありがとうございます。 おかげで大変助かりました。

noname#204879
noname#204879
回答No.5

=DATE(YEAR(A1),MONTH(A1)+IF(DAY(A1)>20,1),IF(DAY(A1)>20,5,IF(DAY(A1)>10,25,15)))

hosino
質問者

お礼

ありがとうございます。 おかげで大変助かりました。

noname#204879
noname#204879
回答No.4

=DATE(YEAR(A1),MONTH(A1)+(DAY(A1)>20),15+10*AND(DAY(A1)>10,DAY(A1)<21)-10*(DAY(A1)>20))

hosino
質問者

お礼

ありがとうございます。 おかげで大変助かりました。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

結果的に、IFを使わないでやってます。 どこでも良いが D1:F4に D列  E列  F列 1 15 0 11 25 0 21 5 1 32 を入れる。 A1に日付シリアル値(エクセルで普通に日付を入れる形の2007/10/1 のような入れ方)があるとして B1に =DATE(YEAR(A1),MONTH(A1)+VLOOKUP(DAY(A1),$D$1:$F$4,3,TRUE),VLOOKUP(DAY(A1),$D$1:$E$4,2,TRUE)) と入れて下方向に式を複写。 ーーー やっていることは 日付の範囲で 1-10日ー>15 11-20->25 21-月末ー>5 を表のE列で引いている。そして 21-月末は翌月へ繰り越すか(=1)、繰り越さない(=0)かを表のF[列で引いている。 ーー 2007/10/1-2008/3/31までは思い通りの日付を返すことを確認済み。 ーー 質問者にはVLOOKUPのTRUE型や関数の組み合わせが、現在では理解できないでしょうが、色んな解法があることを知ってもらうこと、質問者以外も見てくれている方があればということで挙げます。 ーーー IF関数のネストが深くなったら、VLOOKUPの利用を検討してみるのは 定石と思う。

hosino
質問者

お礼

ありがとうございます。 おかげで大変助かりました。

  • pbforce
  • ベストアンサー率22% (379/1719)
回答No.1

式は =IF(DAY(A1)<=10,DATE(YEAR(A1),MONTH(A1),15),IF(DAY(A1)<=20,DATE(YEAR(A1),MONTH(A1),25),IF(DAY(A1)<=31,DATE(YEAR(A1),MONTH(A1)+1,5),))) でいけました。 日付の表示は書式設定で対応して下さい。 もちろん他にも方法はあると思います。

hosino
質問者

お礼

ありがとうございます。 おかげで大変助かりました。

関連するQ&A

専門家に質問してみよう