• 締切
  • 困ってます

エクセル 期間計算 平年 閏年

  • 質問No.6416739
  • 閲覧数2745
  • ありがとう数3
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 66% (2/3)

はじめまして。既出の質問でしたらすみません。エクセル2000を使っています。で、ある期間の日数をdetedif関数を使えば算出できると思うんですが、その期間に閏年が含まれる場合に平年の期間は○日、閏年の期間は○日というふうに分けて算出する方法はありますでしょうか?  例えば2004/5/10~2008/7/17 の期間であれば平年の期間は1095日、閏年の期間は434日になると思いますが、手計算ではなく 期間を入力すれば自動で算出できるようにしたいのです。どなたかわかる方がいらっしゃいましたらご指導お願いします。

回答 (全3件)

  • 回答No.3

ベストアンサー率 28% (4503/16082)

>平年の期間は○日、閏年の期間は○日というふうに分けて
の意味がわからない。、
2000
2004
2008
2012
2016
などがうるう年ですが
2004.2.1-2004.2.20はうるう年は何日?
2003.2.1-2004.2.20はうるう年は何日?
2003.2.1-2004.2.29はうるう年は何日?
などどう区分けするのか、質問文上ではっきりしてますか。
1.1-12.31全期間を平年とうるう年に色分けて、その中の期間(日数で)どちらかに足しこむのか?
変なニーズだと思うが<->既出の質問でしたらすみません
丁寧に意味を説明しないと、常識であるとは言えないだろう。
ーーー
プログラムで(エクセルVBAででも使って)一年ごとに2月末やまたは年末を超える(暦年的な考え方?)などを判別して所属日数を計算し、両者を加えないといけないので、関数では煩雑になるのではないですか。
  • 回答No.2

ベストアンサー率 66% (5277/7938)

その開始~終了でそういう値になると言うことは,間の日数のカウントであって両端日を含む計算ではない(具体的には終了日を含まない)とします。

A1に開始日付
A2に終了日付 として

平年の期間:
=365*(366*(YEAR(A2)-YEAR(A1)+1)-DATE(YEAR(A2)+1,1,1)+DATE(YEAR(A1),1,1))-IF(DAY(DATE(YEAR(A1),2,29))<>29,A1-DATE(YEAR(A1),1,1))-IF(DAY(DATE(YEAR(A2),2,29))<>29,DATE(YEAR(A2)+1,1,1)-A2)

閏年の期間:
=A2-A1-上述の平年の式を入れたセル

のようになりました。
いずれの式のセルも,式を入れてから必要に応じてセルの書式設定の表示形式を標準に直すのを忘れないようにしてください。
お礼コメント
sairenyo

お礼率 66% (2/3)

ありがとうございます。問題が解決しました。
投稿日時:2010/12/31 19:14
  • 回答No.1

ベストアンサー率 49% (2537/5117)

こんばんは!
閏年の期間が435日になってしまいましたが・・・

無理矢理って感じの方法ですが、一つの案としてです。

↓の画像のように作業用の表を使ってみました。
作業列D2セルに
=IF(OR(COUNTBLANK($A$2:$B$2),YEAR($B$2)<YEAR($A$2)+ROW(A1)-1),"",YEAR($A$2)+ROW(A1)-1)
E2セルに
=IF(D2="","",IF(AND(D2=YEAR($A$2),D3=""),$B$2-$A$2+1,IF(AND(D2=YEAR($A$2),D3<>""),DATE(D2,12,31)-$A$2+1,IF(AND(D2<>YEAR($A$2),D2<>YEAR($B$2)),DATE(D2,12,31)-DATE(D2,1,1)+1,$B$2-DATE(D2,1,1)+1))))
F2セルに
=IF(D2="","",IF(DATE(D2,12,31)-DATE(D2,1,1)=365,"○",""))
としてD2~F2セルを範囲指定し、F2セルのフィルハンドルで下へずぃ~~~!っとコピーします。

そして結果の平年日数B4セルは
=SUMIF(F:F,"",E:E)
閏年のB5セルは
=SUMIF(F:F,"○",E:E)
という数式を入れています。

以上、かなり泥臭い方法ですが
他に良い方法があればごめんなさいね。m(__)m
お礼コメント
sairenyo

お礼率 66% (2/3)

お返事ありがとうございました。参考にさせていただきます。
投稿日時:2010/12/31 19:15
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ