Home » Googleスプレッドシートの使い方 » Googleスプレッドシートでnカ月後・nカ月前の日付を計算する-EDATE関数

Googleスプレッドシートでnカ月後・nカ月前の日付を計算する-EDATE関数

対象:Googleスプレッドシート

Googleが無料で提供している表計算ソフト・Googleスプレッドシートでn日後の日付・n日前の日付を計算する基本をご紹介しました。

実務では、nか月後・nか月後の日付を計算したいということもあります。

その場合は、単純な足し算・引き算ではダメです。

1か月には、28日・29日・30日・31日の4パターンがありますから、単純な足し算・引き算ではnか月後・nか月後の日付を求められません。

[スポンサード リンク]

EDATE関数でnか月後・nか月前を求める

nか月後・nか月後の日付を計算する場合は、関数を使いましょう。


▼操作方法:nか月後の日付を計算する
※A1セルに入力された日付の1か月後の日付をB1セルに計算する例
B1セルに
「=EDATE(A1, 1)」
という計算式を入力する

Microsoft Excelにnか月後・nか月前の計算を行うEDATE関数が存在します。

同じ名前の関数がGoogleスプレッドシートにも存在しています。
使い方も、ExcelのEDATE関数と同じです。
第1引数に基準日、第2引数に加算・減算したい数値を指定します。

nか月なら第2引数に正の整数、nか月なら第2引数に負の整数を指定します。

使い方はExcelのEDATE関数と同じですが、ExcelよりもGoogleスプレッドシートのほうが賢いと、私は感じます。

ExcelでEDATE関数を使うとシリアル値が返され、日付の正体が数値であることを知らない人はビックリすることになりますが、Googleスプレッドシートでは日付書式の設定されたデータが返されるからです。

DATE・YEAR・MONTH・DAY関数でnか月後・nか月前を求める

実務上はEDATE関数でOKなことが多いと感じますが、もう1つの方法をご紹介しておきます。

例えば、3月31日の1か月後というときに、4月30日が欲しいのか、5月1日が欲しいのかです。

EDATE関数は、3月31日の1か月後として4月30日を返してきます。

もし、3月31日の1か月後として5月1日を取得したいのならば、以下の方法です。


▼操作方法:nか月後の日付を計算する
※A1セルに入力された日付の1か月後の日付をB1セルに計算する例
B1セルに
「=DATE(YEAR(A1), MONTH(A1)+1, DAY(A1))」
という計算式を入力する

YEAR関数・MONTH関数・DAY関数は、日付の、年・月・日だけを取得する関数です。

いわば、日付データを、年・月・日とバラバラに分解する関数です。

YEAR関数は
 日付データの年の値を取得する関数
MONTH関数は
 日付データの月の値(1から12の値)を取得する関数
DAY関数は
 日付データの日の値(1から31の値)を取得する関数
です。

一方、DATE関数は、年・月・日の数値をまとめて、日付データを作る関数です。
第1引数に年
第2引数に月
第3引数に日
に該当する数値を指定します。

「=DATE(YEAR(A1), MONTH(A1)+1, DAY(A1))」
という数式は、DATE関数の
年を指定する第1引数に「YEAR(A1)」
月を指定する第2引数に「MONTH(A1)+1」
日を指定する第3引数に「DAY(A1)」
を指定していることになります。

上記の例は1か月後の日付を計算する例ですので、DATE関数の第2引数が、月に1を足し算する「MONTH(A1)+1」という数式になっています。

このDATE・YEAR・MONTH・DAY関数を使う方法の場合、3月31日の1か月後として5月1日が返されます。

Home » Googleスプレッドシートの使い方 » Googleスプレッドシートでnカ月後・nカ月前の日付を計算する-EDATE関数

[スポンサード リンク]
[スポンサード リンク]

TrackBack:1

TrackBack URL
Google Apps ScriptでEDATE関数を入力する from インストラクターのネタ帳
EDATE関数を使った数式をGoogleスプレッドシートに入力するGAS(Google Apps Script)スクリプトをご紹介しています。

Home » Googleスプレッドシートの使い方 » Googleスプレッドシートでnカ月後・nカ月前の日付を計算する-EDATE関数

「Googleスプレッドシートの使い方」の記事一覧

検索

最近じっくりと読まれている記事

.