• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルで期限の計算をしたい)

エクセルで期限の計算方法

このQ&Aのポイント
  • エクセルを使用して、期限の計算を行いたい場合について説明します。
  • 特定のセルに月/年の表示形式を設定し、そのセルから36か月後の期限を計算する方法を紹介します。
  • また、空白セルには空白のまま表示させる方法も解説します。

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

  • ベストアンサー
回答No.2

「05/13」と入力すると「(2013/)05/13」と認識されます。 つまり、表示されているのは「月/年」ではなく「月/日」です。 表示形式に関わらず、入力はyyyy/ddで入力して下さい。 また、excelでは、1900/1/1を起点(1)として、その何日後か? として日付を計算します。 従って、空白だと、0と認識され、1900/1/1の前日である、 「1899/12/31から○カ月後」として計算しているのです。 対策についてですが、「= EDATE(A1,48-1)」を「= IF(A1<>"",EDATE(A1,48-1),"")」に変更して下さい。 これで、A列が空白以外の場合のみ、計算するようになります。 ※「= EDATE(A1,48-1)」と記載されていますが、「= EDATE(A1,36-1)」ではありませんか?

xianggu
質問者

お礼

ありがとうございます! 2014/05と入力するとうまくいきました。 未入力の場合も教えていただいた数式に変更すると空白になりました。 失礼いたしました。 36か月と48か月を混同しておりました。

その他の回答 (3)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.4

回答No3です。ご質問の本文では3年後となっていましたので36が使われています。4年後でしたら36が48になりますね。

xianggu
質問者

お礼

そうでした。ご指摘ありがとうございます。 文章内で例として挙げたのは36か月でしたが、画像は48か月になっていました。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

B1セルには次の式を入力して下方にドラッグコピーします。 =IF(A1="","",TEXT(EDATE(A1,36-1),"yyyy年m月")) あるいは次の式を入力して表示形式をyyyy"年"m"月"とします。 =IF(A1="","",EDATE(A1,36-1)) 前者は文字列として扱われますが後者では数値(シリアル値)として扱われます。

xianggu
質問者

お礼

ありがとうございます。 未入力の場合、空白になりました!

回答No.1

入力する際の誤りだと思います。 「05/14」 → 2013年5月14日と認識されます。 (表示は「06/13」ではなく、「05/13」になると思うのですが) 表示される形式に合わせて入力しても、Excel側は理解してくれません。 A列は空白セルなのに、なぜか「1903年11月」と入ってしまいます。 → 空白セル=0=1900年1月1日の前日(実際には入力不可)と認識されてしまっているため。

xianggu
質問者

お礼

ありがとうございます。 ご指摘のとおり月/年と入力したつもりが2013年の月/日と認識されていました。 年/月で入力してみます。

関連するQ&A