- ベストアンサー
DATEDIF関数
関数初心者で困っています。ご伝授お願い致します。 日付けの期間を求めて利用したいのですが? 年末年始をまたぐと「#NUM」になります。何か良い設定はあるのでしょうか? IF(B2="","",(DATEDIF(B1,B2"d")))が計算式です。 よろしくお願い致します。 1/26
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
B1・B2セルに、日付だけ入っていませんか。(「○月×日」等) DATEDIFは、必ず datedif(開始日,終了日,形式) で使わなければいけないので、 終了日より開始日が後ろになってしまうと、エラーになります。 これを避けるには、セルに年から表記すれば良いです。 例1) B1: 11月1日 →セルの値は「2015/11/1」 B2: 1月31日 →セルの値は「2015/1/31」 →マイナス日付はカウントできないので、エラー。 例2) B1: 2014年11月1日 →セルの値は「2014/11/1」 B2: 2015年1月31日 →セルの値は「2015/1/31」 →91日。 のように、ちゃんと出てきます。 ---- ただまあ、DATEDIFはいろいろ動作が謎な隠し関数ですので、正直実務とかには使用しない方が良いです。 >DATEDIFの謎を追え(1) ~ DATEDIF関数の真実 >http://www.niji.or.jp/home/toru/notes/50.html 単純に日数を知りたければ、「=B2-B1」。これだけでいいんです。 こちらならば、Excel本来のシリアル値での計算になりますので、正確です。 (シリアル値=「1900年1月1日」を1として始まる、日付単位の数値。そこから、閏年2/29の有無もきちんとカウントされた、入力日時までの日数として、日付が表現されています。 ちなみにシリアル値は小数点の値も取ることができ、0.5=半日=12時間、などになります。)
その他の回答 (4)
- bunjii
- ベストアンサー率43% (3589/8249)
>年末年始をまたぐと「#NUM」になります。何か良い設定はあるのでしょうか? =IF(B2="","",(DATEDIF(B1,B2"d"))) ↓ =IF(B2="","",(DATEDIF(B1,B2,"d"))) タイプミスでしょうか?(カンマが1個抜けています。) 年末年始をまたいでも正常に計算できます。 B1が開始日でB2が終了日です。 =B2-B1 と等価で計算結果は日数になります。 回答No.1の補足 =IF(C2="","",DATEDIF(#B#2,C2,"d"))) ↓ =IF(C2="","",DATEDIF($B$2,C2,"d"))) これもタイプミスでしょうか? 投稿前に確認されるよう心掛けましょう。
お礼
こんにちは、ありがとう存じます。 何年か前に、PC21本で、勉強してきたはずなのに、中々身にならず忘れます。 貴方さまの言うとおり逆セルでした、12月と1月のセルの中をよく見ると、同じ2015年となっていました。 エクセルの根本と演出と理解していましても、ミスがでたのにびっくりです。 ありがとうございました。
》 IF(C2="","",DATEDIF(#B#2,C2,"d")))の時、絶対参照になっているのとC2です それも間違ってます。ついでに、「転機ミス」の「機」も。
お礼
こんにちは、ありがとう存じます。 何年か前に、PC21本で、勉強してきたはずなのに、中々身にならず忘れます。 貴方さまの言うとおり逆セルでした、12月と1月のセルの中をよく見ると、同じ2015年となっていました。 エクセルの根本と演出と理解していましても、ミスがでたのにびっくりです。 ありがとうございました。
》 IF(B2="","",(DATEDIF(B1,B2"d")))が計算式です それ、間違ってます。
お礼
早速、ありがとう存じます。 失礼しました、計算式、転機ミスでございました。 IF(B2="","",(DATEDIF(B1,B2"d"))) ↓ IF(C2="","",DATEDIF(#B#2,C2,"d")))の時、絶対参照になっているのとC2です。
- kadakun
- ベストアンサー率29% (356/1200)
??? IF(B2="","",DATEDIF(B1,B2,"d")) で、普通に出ますよ・・・ 日付けの逆行の場合は「#NUM」になりますが。(B1が2015/1/1でB2が2014/12/1とか) excel2013
補足
早速、ありがとう存じます。 失礼しました、計算式、転機ミスでございました。 IF(B2="","",(DATEDIF(B1,B2"d"))) ↓ IF(C2="","",DATEDIF(#B#2,C2,"d")))の時、絶対参照になっているのとC2です。
お礼
こんにちは、ご丁寧にありがとう存じます。 何年か前に、PC21本で、勉強してきたはずなのに、中々身にならず忘れます。 貴方さまの言うとおり逆セルでした、12月と1月のセルの中をよく見ると、同じ2015年となっていました。 エクセルの根本と演出と理解していましても、ミスがでたのにびっくりです。 ありがとうございました。