• ベストアンサー

日付の加算

日付Aと日付Bとの差を算出する方法についてはDateDifというのがあるそうですが、 逆に日付AからX年Y月Z日後の日付を算出する関数またはカンタンな処理式があれば教えて下さい。 なお、Excelは97を使用しています。

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

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

X年Y月Z日後を何日後か変換するのはちょっと難しいような気がします。 うるう年を含むとか、30日や31日があるので(その辺を踏まえて計算すれば別ですけど) A2セルに日付 C2セルに年後(Xのみの数字) D2セルに月後(Yのみの数字) E2セルに日後(Zのみの数字) が入っているとして(X年Y月Z日で入っていると分解するのが面倒なので) =DATE(YEAR(A2)+C2,MONTH(A2)+D2,DAY(A2)+E2) でどうですか? 単純に年にX、月にY、日にZを足して日付型に変換しています。 年、月の繰り上がりは勝手にしてくれるので大丈夫だと思います。 分解が必要だと、かなり長い式になってしまうような・・・

meu350
質問者

お礼

ちょっとセル数を食うのが難ですけど,この方法が一番楽でした. 一度設定を組んでしまえば,修正や変更もOKですし.

すると、全ての回答が全文表示されます。

その他の回答 (5)

  • comv
  • ベストアンサー率52% (322/612)
回答No.6

こんばんは >2001/の後が?なんですけど… 出したい結果が?だと式の立てようがないと思うのですが 例えば 単純に計算すると 1999/1/30 の 2年1月1日後は? では  2年後 2002年  1ヶ月 2月  1日  31日 となってしまいますが 2002/2/31 は存在しないので 2月末からの3日後の 2002/3/3 とするのか あくまでも月末基準で 2002/2/28 とするのかが 2002/1/29 や 2002/1/28 の 2年1月1日後 も 同様にどのような結果を望まれているのかが 「1999/2/27 の 2年1月1日後は?」の場合は 単純に足すと 2001/3/28 ですが 2月の1日後は月末なので 2001/3/31 と元日を基準に かえすのかが 1999/2/28(月末) も同様で 2002/3/29 なのか 2001/3/31 なのかが 1999/4/30 の 2年1月1日後 も同様で4月の月末に 対し 2002/5/31とするのか 2002/5/31(月末)+1日 の2002/6/1 を返すのかが決まっていないと正しく計算 されません

すると、全ての回答が全文表示されます。
  • ka3
  • ベストアンサー率18% (36/194)
回答No.5

 恐らく、『X年Y月Z日後』と入力されても、200X年と変換される為にお困りなんだと推測します。  そこで、単純に、2000年を減算する式では如何でしょうか ?  =[A]+([X年Y月Z日]-[1999/12/31])

meu350
質問者

補足

試しに,回答4&5の方法でやってみました. セルAに日付A,セルBに日付B,セルCに1999/12/31(又は2000/1/1)を入れ, =A+B-C(又はA+B-C+1)としたのですが, 回答2とは違う結果が出てしまいました(回答4&5の結果は同じ). コレって何故なんでしょう?

すると、全ての回答が全文表示されます。
  • ka3
  • ベストアンサー率18% (36/194)
回答No.4

 恐らく、『X年Y月Z日後』と入力されても、200X年と変換される為にお困りなんだと推測します。  そこで、単純に、2000年を減算する「([2000/1/1]+1)」式では如何でしょうか ?  =[A]+([X年Y月Z日]-([2000/1/1]+1))

すると、全ての回答が全文表示されます。
  • comv
  • ベストアンサー率52% (322/612)
回答No.3

こんにちは 経過期日の考え方には、特定のケースでの規則性を補足 して頂く必要があると思います 1999/1/30 の 2年1月1日後は? → 2001/ 1999/1/29 の 2年1月1日後は? → 2001/ 1999/1/28 の 2年1月1日後は? → 2001/ 1999/2/27 の 2年1月1日後は? → 2001/ 1999/2/28 の 2年1月1日後は? → 2001/ 1999/4/30 の 2年1月1日後は? → 2001/

meu350
質問者

補足

2001/の後が?なんですけど…

すると、全ての回答が全文表示されます。
  • KODAMAR
  • ベストアンサー率26% (267/1006)
回答No.1

X年Y月Z日後、というよりZ日後とすれば簡単じゃないでしょうか? 日付Aに足せばいいわけですから =日付A+Z とすればOKですよ。

meu350
質問者

補足

説明不足で申し訳ありません。 特許満了日の計算をするとき、 『昭和55年6月6日から22年4ヶ月17日後』とか『平成11年8月2日から4年7ヶ月6日後』とかいう細かい計算になってしまうので、 単純に『?日後』で加算できないんです。 『X年Y月Z日後』=『?日後』の変換が容易になれば、教えてくださった方法でも充分なのですけど、知識不足でその辺の方法を知らないんです…。

すると、全ての回答が全文表示されます。

関連するQ&A