目次
あなたのような読者は、MUOをサポートするのに役立ちます。当サイトのリンクを使って購入された場合、アフィリエイト報酬を得ることがあります。続きを読む
2つの日付の差を計算するのは、何度もやるとイライラしますよね。幸い、Google Sheetsにはこの目的のための特別な関数があります。
DATEDIF関数は、2つの日付を入力すると、その差が日、月、年単位でどのくらいあるかを教えてくれます。この関数がどのようなものなのか、簡単な例で見てみましょう。
スクロールして内容を続ける
Google SheetsのDATEDIF関数とは?
DATEDIFは、2つの日付の差を計算するGoogle Sheetsの関数です。この関数は、差の値を年、月、日単位で返すことができます。適切なパラメータを指定すると、DATEDIFは月と日の差も返すことができ、年の差は無視されるなど、さまざまな癖があります。
DATEDIF関数の構文は以下の通りです:
=DATEDIF(date1, date2, unit)
DATEDIF は、date1 から date2 を引き、その差を指定した単位で返す。この関数がサポートする単位を以下に示します:
Y |
2つの日付の間の整数年数。 |
M |
2つの日付の間の整数ヶ月の数。 |
D |
2つの日付の間の日数。 |
MD |
2つの日付の間の日数。ここでは、年および月の合計が差し引かれます。 |
ワイエム |
2つの日付の間にある整数月の数(ここで、整数年は減算される)。 |
ワイディー |
2つの日付の間の日数。2つの日付は1年以上離れていないとみなされる。 |
DATEDIF関数において、これらの単位がどのような意味を持つのか、例を挙げて説明します。
例として、学生'の誕生日があり、2001年2月7日である。DATEDIFを使うと、その生徒が2022年1月31日に何歳であったかを示すことができます。以下は、DATEDIF関数で各ユニットが返す値です:
- Y: 2つの日付の差は20年なので、これは20を返します。
- M: これは251を返します。2つの日付の差は251ヶ月です。
- D:2つの日付の間に7663日経過しているので、7663を返します。
- MD:これは24を返します。2つの日付の差は7と31の差であり、24となります。
- YM:これは11を返します。通年を引いた後、2月は1月から11ヶ月離れている。
- YD:358を返します。年数を無視すると、2月7日と1月31日の差は358日です。
Google SheetsでのDATEDIF関数の使用方法
DATEDIF関数は、3つのパラメータを受け取ります:最初の日付、2番目の日付、そして単位です。入力する日付は日付形式でなければならず、テキストではありません。また、単位は前節で述べたものに限られます。これらを踏まえて、この関数を実際に使ってみましょう。
簡単な例として、火星2020ミッションの打ち上げとタッチダウンの日付が書かれたスプレッドシートがあります。このスプレッドシートによると、宇宙船は2020年7月30日に離陸し、2021年2月18日に火星に着陸しています。
目的は、この宇宙船が移動した日数や月数を計算することです。そのために、Google SheetsのDATEDIF関数を使うことができます。まず、セルの形式が正しいかどうかを確認する必要があります:
フォーマットが整ったので、次はDATEDIFを使って差分を計算します:
Google Sheetsはこれで、宇宙船が569日間移動したことを教えてくれる。この数式は、DATEDIFを呼び出して、日付B2とB3の差を日数で計算しています。
DATEDIFの単位をいじることで、宇宙船が何ヶ月移動したかを計算することができます:
ください。
Google Sheetsはこれで、宇宙船が18ヶ月間移動したことを教えてくれる。ここでの計算式は、日数ではなく月数で返すことを除けば、先ほどと同じです。
別の例でこのスキルを強化しましょう。上のスプレッドシートでは、John Doe’の生年月日が表示されています。目標は、前回の誕生日から何日経過し、次の誕生日まで何日残っているかを計算することです。
そのためには、TODAY関数を使ってGoogle Sheetsに今日’の日付を入力し、DATEDIF関数を使って今日'とジョン’の生年月日の差を計算すればよいのです。
この数式は、今日の’日付を取得し、セルに表示します。返される値は日付形式なので、DATEDIFなど他の日付関連関数でも使用可能です。
これで、これから扱う2つの日付が揃いました。DATEDIFを使って、Johnの最後の誕生日から経過した日数を計算してみましょう:
この式は、日付 B1 と B2 の差を計算します。YDパラメータは、2つの日付が1年以上離れていないと仮定するように関数に指示します。Enterを押すと、Google SheetsはJohn’の最後の誕生日(この例では現時点で331)から何日経過したかを教えてくれます。
ついでに、John’の次の誕生日まで何日あるか見てみましょう。John’の誕生日は365日ごとに繰り返され、前回の誕生日から284日経過していれば、次の誕生日まで365日-284日残っていることになります。これを表す式を書いてみましょう:
この式は、365からJohn’の前回の誕生日からの経過日数を引き、John’の次の誕生日まであと何日あるかを教えてくれる。
また、Google Sheetsで日付を数値に変換することで、2つの日付の差を計算することもできます。この方法では、日付に対して数学的な関数を実行し、Google Sheetsで数字の引き算をするのと同じように引き算をすることができます。
カウントダウンを始めよう:Google Sheetsで日付の違いを計算する
次のイベントまでの日数や、過去のイベントからの月数など、Google Sheetsは日数をカウントダウンするのに便利なツールです。
このガイドで、DATEDIFF を使って 2 つの日付の差を計算する方法がわかったと思います。また、この差を見る時間単位を指定することができ、年、月、日、そして偏差値を指定することができます。
Google Sheetsでは、時刻と日付の関数は便利なもので、それらを使って計算を楽にすることができます。しかし、DATEDIFFだけではありません。もっと多くの関数を使いこなして武器を増やし、カウントダウンをスタートさせましょう!