関数を使って何年後、何か月後を算出する

何年後、何か月後を作成する基本的な流れ

エクセルでは関数を使って「2012/8/15」の「3年後」や「9ヵ月後」の日付を求めることができます。手順としては

  1. 日付データを[年,月,日]に分解する
  2. 計算処理をしながら分解された[年,月,日]を1つの日付データへ再統合

となります。

「B1」に「2012/8/15」と入力した状態で、そのB1をYEAR関数で囲めば「年」、MONTH関数で囲めば「月」、DAY関数で囲めば「日」だけを取り出せます。

  • YEAR(B1)=2012…年
  • MONTH(B1)=8…月
  • DAY(B1)=15…日


(ここではB3:B5に[年,月,日]を表示させた)

さて、分解された[年,月,日]を1つの日付データとして再統合させる際にはDATE関数を使います。

=DATE(年,月,日)

のように使います。具体的には

=DATE(B3,B4,B5)

とすれば元の日付が表現できます。


(ここではB7に表示させた)

このDATE関数を応用し、「3年後」を作成するならば、最初の引数「年」に「+3」をすればよいのです。具体的には

=DATE(B3+3,B4,B5)

とします。これで3年後の日付である「2015/8/15」が作成されました。


(B8)

同様に「9ヵ月後」を作成してみます。式は

=DATE(B3,B4+9,B5)

となります。「2013/5/15」が作成されます。

またB1から直接「9ヵ月後」を作成するならば

=DATE(YEAR(B1),MONTH(B1)+9,DAY(B1))

となりますね。

何日後、はシンプルに

最後にセルB1の「7日後」を作成してみます。

=DATE(B3,B4,B5+7)

とすれば「2012/8/22」となります。

しかしエクセルでは「1日=1」で計算できるので、単純に

=B1+7

とすればよいのです。「年・月」では「分解→統合」の必要がありますが、「日」の計算はシンプルに足し算・引き算を用いればよいでしょう。

完成サンプルファイルのダウンロード