Home » Excel(エクセル)の関数・数式の使い方 » 日付・時間 » 日数計算をする−引き算

対象:Excel97, Excel2000, Excel2002, Excel2003, Excel2007

日数・日付関連の計算について、何度かご紹介しています。

日数・日付関連計算の一つ、DATEDIF関数を使った年齢計算は、このサイトの人気ページの一つです。

DATEDIF関数は、大人の事情で[関数の挿入]ダイアログなどから挿入できないこともあり、結構有名だったりします。

しかしそのことによって、Excelの日数計算はDATEDIF関数を使わないとできない、と思い込んでる方もいらっしゃるようですが、そんなことはありません。

[スポンサード リンク]

Excelでは、ある日付ともう一つの日付の間が何日あるのか、といった単純な期間日数の計算なら、関数は一切使わず引き算だけでできてしまいます。


▼操作手順:日数計算を行う
※A2セルに開始日、B2セルに終了日が入力されているとき、C2セルにその間の日数を表示する例

C2セルに
「=B2-A2」
という計算式を入力
 ↓
C2セルの表示形式を「標準」または「数値」にする

例えば
A2セルに「2007/1/1」
B2セルに「2007/8/30」
という日付データが入力されているときに
C2セルに「=B2-A2」という計算式を入力すると
「1900/8/28」
といった表示になってしまいます。

これはExcelが表示形式を「日付」にしてしまうためです。

この「1900/8/28」という表示を見て日数計算を引き算ではできない、と思ってしまう方もいらっしゃいますが、実はこれで計算は正しく行われています。

正しい計算結果が表示されるように表示形式を変更すればいいのです。

表示形式を「日付」ではなく、「標準」や「数値」にしてやればいいわけです。

[セルの書式設定]ダイアログ−[表示形式]タブの[分類]欄で、「標準」や「数値」に設定してやれば、上記の例であれば2007年1月1日から2007年8月30日までの日数「241」が表示されます。

「241」という数値を
「日付」表示形式で表示したのが
「1900/8/28」だったのです。

▼サンプルファイル(002789.xls 15KByte)ダウンロード

サンプルファイルでは、「=B2-A2」という計算式を、C2セルとC3セルに入力し、C2セルを表示形式:「標準」、C3セルを表示形式:「日付」に設定してあります。

例えば、
A2セルを「2007/1/1」
B2セルを「2007/1/2」
にしたらどうなるか、
A2セルを「2007/1/1」
B2セルを「2007/1/1」
にしたらどうなるか、
A2セルを「2007/1/2」
B2セルを「2007/1/1」
にしたらどうなるか、
などお試しください。

そして、日付データはシリアル値という数値なので、日数計算は基本的に引き算を行って、正しく書式設定すればできるということをご理解ください。

また、以下のようなネタも合わせてご参照ください。

関連語句
DATE関数で45日前に設定する方法, 指定した日を除いた日付を返す関数は?, 在籍期間計算

Home » Excel(エクセル)の関数・数式の使い方 » 日付・時間 » 日数計算をする−引き算

トラックバック:3

TrackBack URL
n日後の日付を求める−足し算 from インストラクターのネタ帳
対象:Excel97,Excel2000,Excel2002,Excel2003,Excel2007 関数を使わなくても、引き算をすれば日数計算ができ...
シリアル値を月に変換したい−MONTH関数 from インストラクターのネタ帳
対象:Excel97,Excel2000,Excel2002,Excel2003,Excel2007 「シリアル値を月に変換したい」 という要望に対して...
月末までの日数を取得する関数は?−DATE・YEAR・MONTH関数 from インストラクターのネタ帳
対象:Excel2002, Excel2003, Excel2007 「エクセル 月末までの日数 関数」 といった検索が行われていることがあります。 ...

Home » Excel(エクセル)の関数・数式の使い方 » 日付・時間 » 日数計算をする−引き算

「日付・時間」の記事一覧

検索

このページの上部へジャンプ

.