
次のような場合の計算式を教えて下さい。
日数の計算です。
1、2011/03/15~2011/5/10
※ここの1ヶ月と25日に計算式はわかります。
但し次のような場合
2,2011/06/20~2012/09/10
※ここの1年の計算式は分かりますが、月数が14ヶ月となります。これを1年2ヶ月21日と計算する計算式を教えて下さい。
また、
1,2ヶ月15日
2,3ヶ月10日
3,1年2ヶ月21日 の期間があった場合
これを合計して 1年8ヶ月26日 と上記期間毎とそれを合計した合計期間を計算する方法を教えて下さい。
よろしくお願いします。
No.4ベストアンサー
- 回答日時:
翌日起算で計算する一例。
複雑でだいぶ難しいですが、一応、下の数式で計算できます。なおバグを含むとされている DATEDIF 関数の使用は避けてみました。A2 2012/2/2
B2 2014/2/1
C2 =b2-a2
D2 =int(c2/365)-(date(year(b2),month(a2),day(a2))>b2)
E2 =mod(month(b2)+12*(month(a2)>month(b2))-month(a2)-(day(a2)>day(b2)),12)
F2 =b2-date(year(b2),month(b2)-(day(a2)>day(b2)),day(a2))
G2 =d2&" 年 "&e2&" か月 "&f2&" 日"
A4 合計
C4 =sum(c2:c3)
D4 =int(c4/365.25)
E4 =int((c4-365.25*d4)/(365.25/12))
F4 =round(c4-365.25*d4-365.25/12*e4,)

この回答への補足
大変ありがとうございます。
少しエラーがあるので教えて下さい。
開始日 2013/5/6 終了日 2013/6/13 とすると
F2 「日」の表示が 1900/1/7 と表示されます。
本当であれば 7 と表示されると思うのですが・・
これは F3も部分も同じです。(下記 開始・終了日を入力 1900/1/27と表示されます。)
それと
開始日 2012/12/8 終了日 2013/4/4 とすると
D3 「年」に-1と表示されます。
1年は経過していないので、0年3ヶ月27日 と表示でいないでしょうか?
以上 2点 ご教授いただければ大変助かります。
大変わかりやすのでこの方法を使いたいのでよろしくお願いいたします。
No.7
- 回答日時:
期間の計算は基準が異なると正しい結果を得られません。
>1、2011/03/15~2011/5/10
あなたの計算では「1ヶ月と25日」と言うことですが1ヶ月を30日とすれば3月31日の分が誤差になります。
また、起算日の「2011/03/15」を算入するか否かでも1日の誤差が生じます。
保険契約等の場合は契約日も含んでいますがあなたの見解は如何でしょうか?
>2,2011/06/20~2012/09/10
あなたの判定で「1年2ヶ月21日」とされる根拠も提示しなければ正しい計算式は導けません。
暦を基準とする計算と経過日数から換算する方法では手順が異なりますので厳密に提示してください。
尚、Excelでの日時を扱うときは実際の値(シリアル値)と表示が異なることが起こります。
シリアル値の1は年月日の起点である1900年1月1日に置き換えて表示されます。
閏年は2月29日が自動的に含まれます。
これらのことを念頭に質問の内容を見直してください。
No.6
- 回答日時:
まずは、要請にお答えします。
>あと1つだけお伺いしたいことがあります。
……
期間計 1年13ヶ月36日
↓
よって 2年2ヶ月6日 となるようにします。
※日数を30日で計算します。(このような日数の算出方法が民法の規定にあるそうです。)
要するに、30 日ごとに繰り上げたいということですね。それは単に、日数を 30 日で割り算して、商と余りを求めるだけですね。12 か月の日数は、30 日/月 x 12 月 = 360 日とすればいいですね。
D4 =INT(C4/(30*12))
E4 =INT((C4-30*12*D4)/30)
F4 =C4-30*(12*D4+E4)
なお 1 か月の長さはご存じのとおり 28 ~ 31 日まで幅があるわけですから、シート各行の○年△月×日という答えの○、△、×をそれぞれ合計した値と、日数の合計を○年△月×日の形式に直した場合の値は、一般には一致しないはずです。各年・各月の繰り上がりのリズムが一定していないので。
>※日数を30日で計算します。(このような日数の算出方法が民法の規定にあるそうです。)
本当にそれで合っているか、よくよくご確認ください。例えば参考 URL のページなどでは、大の月/小の月によって実日数が変わると述べている民法上の事例もあります。
また、契約期間その他において「30 日」と言うのと「1 か月」と言うのでは、扱いが異なっているはずなので、ご注意ください。「10 月 31 日」から 1 か月だと、翌月の「応当する日」(応当日)が「11 月 31 日」であって存在しない日となるので、「その前日」11 月 30 日をもって期間が満了、といった計算の仕方が 143 条ではされたりしますね。
参考URL:http://www5d.biglobe.ne.jp/Jusl/TomoLaw/KikanKei …
No.5
- 回答日時:
No.4 です。
失礼しました。ご指摘のあった 2 点のうち、1 点は数式の誤りです。もう 1 点は誤りではなく、正常な動きです。>開始日 2012/12/8 終了日 2013/4/4 とするとD3 「年」に-1と表示されます。
失礼しました。誤りなので、次式に差替えをお願いいたします。
D2 =year(b2)-year(a2)-(date(year(b2),month(a2),day(a2))>b2)
>開始日 2013/5/6 終了日 2013/6/13 とするとF2 「日」の表示が 1900/1/7 と表示されます。
本当であれば 7 と表示されると思うのですが・・
その現象は、操作の手順によっては Excel が勝手に、D ~ F 列のセルの書式として A ~ B 列(参照元)と同じものを自動的に設定してしまうために起こります。現在、D ~ F 列の書式を確認すると日付関係のものになっていますので、「数値」などの書式に変更すれば、「1900/1/7」が「7」に変化します。なおこの変化は見かけだけの問題であって、セルに記入されている値や数式そのものには、何の変化も起きていません。
この回答への補足
本当にありがとうございます。
あと1つだけお伺いしたいことがあります。
次のような条件があります。
期間1 1年2ヶ月10日
期間2 7ヶ月14日
期間3 4ヶ月12日
期間計 1年13ヶ月36日
↓
よって 2年2ヶ月6日 となるようにします。
※日数を30日で計算します。(このような日数の算出方法が民法の規定にあるそうです。)
そこで、F2の7日とF3の27日を合計すると1ヶ月4日とならなければなりませんが、現在の計算式だと 1ヶ月3日となってしまいます。
そのため G2 0年1ヶ月7日と G3 0年3ヶ月27日 の 合計 G4が 0年5ヶ月3日となっています。
この G4を 0年5ヶ月4日とする方法はないでしょうか?
最初に記載すれば良かったのですが、要領を得ない質問で迷惑をお掛けしますが、よろしくお願いします。
No.3
- 回答日時:
区間の日数では30日は使わずに、合計のとこだけを30日1か月で計算したい混在ルールということですね。
(あんまり感心できませんが、そうしたいなら。)>申し訳ございませんが具体的な計算式で教えて下さい。
では、アナタのエクセルに具体的にどこに何を記入してるのかから説明が無いとダメです。
簡単のため
>=DATEDIF(B4,B5,"Y")&"年"&DATEDIF(B4,B5,"YM")&"ヶ月"&DATEDIF(B4,B5,"MD")&"日"
この数式を
=DATEDIF(B4,B5,"Y")*10000+DATEDIF(B4,B5,"YM")*100+DATEDIF(B4,B5,"MD")
に変更して、セルの書式設定の表示形式のユーザー定義で
0年00ヶ月00日
と設定しておきます。
これがB6にあります。
また「1年2か月21日」改め「1年02ヶ月21日」がC6にあります。
合計の式は
=INT(SUMPRODUCT(INT(B6:C6/10000)*360+MOD(INT(B6:C6/100),100)*30+MOD(B6:C6,100))/360)*10000
+INT(MOD(SUMPRODUCT(INT(B6:C6/10000)*360+MOD(INT(B6:C6/100),100)*30+MOD(B6:C6,100)),360)/30)*100
+MOD(SUMPRODUCT(INT(B6:C6/10000)*360+MOD(INT(B6:C6/100),100)*30+MOD(B6:C6,100)),30)
と記入し、同じく0年00ヶ月00日の表示形式を付けておきます。

No.2
- 回答日時:
>これを1年2ヶ月21日と計算する計算式
A1からB1の日付で
=TEXT(DATEDIF(A1,B1,"y"),"0年;;;")&TEXT(DATEDIF(A1,B1,"ym"),"0ヶ月;;;")&TEXT(DATEDIF(A1,B1,"md"),"0日;;;")
といった具合に文字列で計算結果を表示します。
文字列で結果を出す方式にしとかないと、たとえば
2013/6/20から
2013/9/19まで
みたいな計算ができません。
ここから派生する問題として、説明されていませんが後半のご質問は「30日で1か月とする」という前提を置いて計算したいという事でしょうか。(上述の回答は、こちらで例示した6/20~9/19のようにそういう前提ではありません)
それならそれで、区間の日数を「日単位」ですべて計算(=B1-A1、あるいは2か月×30+15日)し、合計日数を改めて30日・12か月×30日で繰り上げていく(MOD関数を使う)ようなのも方法の一つになります。
また別のアプローチとしては、
A1,B1に日付、C1に2か月15日
A2,B2に日付、C2に3か月10日
A3,B3に日付、C3に1年2か月21日
としたときに、前述の数式を使い「SUM(A1:A3)からSUM(B1:B3)まで」で計算するという方法もあります。
この回答への補足
できましたら追加して計算式をお願いします。
ご指摘の通り「30日で1か月とする」で計算しています。(質問の要領が悪く申し訳ありません。)
=DATEDIF(B4,B5,"Y")&"年"&DATEDIF(B4,B5,"YM")&"ヶ月"&DATEDIF(B4,B5,"MD")&"日"
この計算式で、
1,2012/3/15から2012/5/10 を0年1ヶ月25日
2,2012/6/20から2013/9/10 を1年2ヶ月21日
以上で項目別に期間が計算できた後
0年1ヶ月25日 + 1年2ヶ月21日
のように足して
「1年4ヶ月16日」
と計算結果として表示できる計算式を教えて下さい。
見よう見まねでやっているので、申し訳ございませんが具体的な計算式で教えて下さい。
よろしくお願いします。
No.1
- 回答日時:
DATEDIF関数
を使えば出来ると思います。
http://kokoro.kir.jp/excel/datedif.html
参考URL:http://kokoro.kir.jp/excel/datedif.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 財務・会計・経理 減価償却(一括償却)について質問です。 ※1月決算の場合(新しい期2月1日から) 7月10日 134 2 2023/08/12 02:21
- 高校 日商簿記3級の勉強中なのですが 精算表が完成せず困っています。 こちらの問題の回答を教えていただきた 2 2023/03/02 09:07
- その他(ビジネススキル・経営ノウハウ) 貸付金 利息、無利息 回答お願いします。 会社経営者です。 例えば、 従業員に40万貸付 返済期間 7 2023/01/22 09:32
- 労働相談 有給の計算について 3 2023/05/20 13:11
- 財務・会計・経理 もう一度減価償却について質問です。 (pc11月31日に、利用開始して1月末決算) 決算終了後の減価 2 2023/04/12 15:08
- その他(教育・科学・学問) 目標率と達成率の計算方法を知りたいです。 例えば、 期間は10日間で目標は100万円の売上を上げる場 4 2022/08/22 13:37
- 労働相談 有給計算について 回答お願いします。 建設業経営です。休日は日曜のみ 従業員の有給計算について 雇い 2 2023/03/26 06:12
- その他(お金・保険・資産運用) 失業給付額ですが、最後の月の給与は 3 2023/02/21 16:53
- 財務・会計・経理 賞与引当金の計上について計上が必要かどうかまとめてみました(1月決算) 認識違うぞということがあれば 1 2023/07/24 17:17
- 所得・給料・お小遣い 有給休暇の平均賃金を用いて計算する場合について 3 2023/06/08 07:02
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelでタイムコード(映像)の...
-
秒を日付に変換
-
フライドポテトについて質問で...
-
1光年の計算方法について
-
”電波自由空間損失”のエクセル...
-
小数点以下は、どこまで計算す...
-
サンプル数の異なる2群間にお...
-
10分は何時間ですか?わかりま...
-
EXCELにてローパスフィルタを作...
-
数学のテストで相似条件で二角...
-
X²+X=0 この解き方がわかりま...
-
『こんな事をしてしまって、嫌...
-
変化率のみで、有意差の検定は...
-
自分が求めている答えが返って...
-
nを自然数とする。 3辺の長さが...
-
2郡の共通の標準偏差とは
-
(a+b)(b+c)(c+a)の展開の仕方を...
-
曲線y=X^3+X^2-1の接線で、原...
-
正八面体ABCDEFの各面の重心を...
-
エクセルのグラフから半値幅を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelでタイムコード(映像)の...
-
小数点以下は、どこまで計算す...
-
”電波自由空間損失”のエクセル...
-
秒を日付に変換
-
エクセルで勤怠表を作りたいの...
-
簿記3級 小数点以下の計算
-
SD法で各対象間の距離(D値)を...
-
傾き補正について
-
記録タイマーの計算が分かりま...
-
1光年の計算方法について
-
混合ガスの爆発限界
-
エクセルの計算式
-
社内の有給計算式をExcelで作り...
-
フライドポテトについて質問で...
-
海抜0mで、1000hPaで気温30℃、...
-
サンプル数の異なる2群間にお...
-
EXCELにてローパスフィルタを作...
-
現在中3です。y=a(x-p)+q ...
-
エクセルのグラフから半値幅を...
-
検量線の決定係数について
おすすめ情報