
エクセルである期間を計算するためにYEARFRAC関数を用いました。
仮にA1に1999/4/1、B1に2007/4/1と入力し、C1に端数は切り上げた状態で年数を9年(8年と1日なので)と表示させたいのです。
そこでC1に『ROUNDUP((YEARFRAC(A2,B2)),0)』と入力したのですが、8年と表示されてしまいます・・・。
これを9年と表示するにはどうしたらよいのでしょうか?
『ROUNDUP((YEARFRAC(A2,B2))+1,0)』とすれば良いのかと思ったのですが、検証した結果違うみたいで・・・。
分かる方がいらしゃったら教えて下さい!
No.4ベストアンサー
- 回答日時:
#02です。
#01さんの補足を見て再度試しました開始日 終了日 YEARFRAC(A1,B1,3) YEARFRAC(A1,B1,1)
2003/4/1 2006/4/1 3.002739726 3.000684463
2004/4/1 2007/4/1 3 2.997946612
2005/4/1 2008/4/1 3.002739726 3.000684463
2006/4/1 2009/4/1 3.002739726 3.000684463
どうもYEARFRAC関数は「年」だけで年間日数(365日または366日)の判断をしているようです。これでは厳密な計算には使えませんね。
やはり「満年数+1」を求める式である
=DATEDIF(A2,B2,"Y")+1
をお勧めします
検証ありがとうございます!
ご提案どおり『=DATEDIF(A2,B2,"Y")+1』を使用したいと思います。
数の数え方は難しいんですね・・・。
No.3
- 回答日時:
#02です。
YEARFRAC関数を試した結果、訂正があります。2004年02月が閏年です
開始日 終了日
2003/4/1 2004/4/1 (2/29を挟んだ1年+1日)
=TEARFRAC(A1,B1,1) → 結果は1.00 → 切り上げて1
=TEARFRAC(A1,B1,3) → 結果は1.002739 → 切り上げて2
開始日 終了日
2002/4/1 2004/4/1 (2/29を挟んだ2年+1日)
=TEARFRAC(A1,B1,1) → 結果は2.000912409 → 切り上げて3
=TEARFRAC(A1,B1,3) → 結果は2.002739726 → 切り上げて3
開始日 終了日
2002/4/1 2004/3/31 (2/29を挟んだ満2年ちょうど)
=TEARFRAC(A1,B1,1) → 結果は1.998175182 → 切り上げて2
=TEARFRAC(A1,B1,3) → 結果は2.00 → 切り上げて2
=TEARFRAC(A1,B1,3)
はちゃんと閏年を考慮しているようです。
No.2
- 回答日時:
YEARFRAC関数を使用したいなら
=ROUNDUP(YEARFRAC(A1,B1,3),0)
で「9」になります。ただしYEARFRAC関数は閏年は考慮していないので必ずしも正確ではない可能性があります
=DATEDIF(A2,B2,"Y")+1
の方がよいかもしれません。
回答ありがとうございます!
うるう年が関係するのですね・・・。
ご提案の『=DATEDIF(A2,B2,"Y")+1』を試したところ、上手く行きました!
関数は種類が多くてどれを使用すべきか悩むのですが、1つずつマスターしていこうと思います。
No.1
- 回答日時:
=YEARFRAC(A1,A2)は、=YEARFRAC(A1,A2,0)と同様、1年を360日で計算しますから、そういう結果になります。
実際の日数で計算するなら=YEARFRAC(A1,A2,1)としなければいけません。
切り上げるなら、
=ROUNDUP(YEARFRAC(A1,A2,1),0)ではどうでしょうか?
回答ありがとうございます。
ご提案どおりROUNDUP((YEARFRAC(A1,B1,1)),0)と変えてみました。
質問例の1999/4/1から2007/4/1までの期間計算は9年と表示されましたが、2004/4/1から2007/4/1で試算させたところ3年となってしまいました(泣)
本来は3年と1日なので4年となって欲しかったのですが・・・。
何か足りないんでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- Excel(エクセル) エクセルについての質問です A1に入力した数字をB1に入力した数字に+して C1に出した時に、B2に 4 2022/12/09 21:57
- Excel(エクセル) 至急です><Excelの関数を教えてください。 2 2022/03/22 17:56
- Excel(エクセル) エクセルで納品書を作成中ですが、関数を教えて下さい。 2 2022/09/05 10:32
- その他(Microsoft Office) IF関数について教えてください 2 2022/05/10 13:31
- Excel(エクセル) WORKDAY関数 4 2023/06/08 13:23
- Excel(エクセル) ExcelのIF関数について 4 2023/05/24 12:54
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) エクセルで一定の数値を超えたとき”一定数”、超えなかったら計算式を入れたい 3 2022/04/05 10:31
- Excel(エクセル) Excelについて A1からA12まで、1月〜12月と入力し、 B1からB12の範囲に、C1とD1に 4 2022/05/26 22:48
関連するカテゴリからQ&Aを探す
おすすめ情報
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
1年7ヶ月って何日ですか?
-
閏年の対前年比較のやり方
-
250万時間
-
太陽章
-
excel2010で関数や数式で日数計...
-
閏年の意味を知らないのは面接...
-
エクセル 学年
-
理科の月の単元でどうしても意...
-
初日の出の方角は、同じ場所だ...
-
4月27日(火) 12月7日(金) 12月1...
-
1年=365(6)日
-
過去1年分のグラフを作りたい
-
わかりません! グレグリオ暦と...
-
エクセルのYEARFRACで・・・。
-
理想の世界の、一歩手前が本当...
-
1ヶ月はなぜ30日と31日になったの?
-
VBAで日付セル内の年度のみを変...
-
ペルシャ暦の置閏法について
-
農業暦の調べ方を教えて下さい。
-
どうして2月は28日しかないので...
おすすめ情報