[[20080508151901]] 『定年まであと○年○ヵ月○日』(ネオ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『定年まであと○年○ヵ月○日』(ネオ)

 A1に生年月日(例:1964/10/10)があり、B1には60歳になる年月日を
 =EDATE(A1,60*12)で求めました。---@
 求められた年月日までtoday()からあと何年何ヵ月と何日あるかを
 求めたいのですがどんな関数が適当でしょうか?
 単純に@からtoday()で引き算したのですが、どうも違うような数値が
 出てきたようです。

 過去ログも調べましたがなかなかみつかりませんでしたので、お知恵を拝借
 致します。
 よろしくお願いします。m(__)m
 


 =DATEDIF(B1,TODAY(),"y")&"年"&DATEDIF(B1,TODAY(),"ym")&"ヶ月"
 何日までは出せません、僕にはこれが限界…
 (DDDSSS)

 ここらへんは参考になりませんかね。
 
[[20070626171421]]『間の日付カウント』(しーたん)
 
ただし、ひと月の日数はその月によって異なりますので、誤差が出る可能性を念頭においてください。
(ROUGE)

 >どうも違うような数値が出てきたようです。
 どんな日付同士で、どんなおかしな結果が出て、ご自身はどんな結果が合っていると考えられたのですか?

 ※ 期間計算の考え方は、人によって違うので決定版がないようです。以下確認の為にお尋ねします。

 今日が 2008年1月30日 で
 定年が 2009年3月 1日 だったら、

 「何年何ヵ月と何日」ならシックリ来ますか?

 (そう結論した「考え方」も併せてご提示いただくと、回答側も考え易くなります。)

 (半平太)

 みなさん、ありがとうごづいます。m(__)m 

 半平太さん、情報不足の点、お許しください。m(__)m

 単純に引き算したら、1916/6/3 となり、表示形式を標準にしたら5999となりました。
 それで、この5999はシリアル値だと思い、その数値を基に何年何ヶ月何日を
 求めたくて試行錯誤しております。

 それで、多少の誤差は、この場合無視(?)することとします。

 DDDSSSさんのアドバイスで何とかなるような気がして、さらに試行錯誤しています。


 >さらに試行錯誤・・・・
 [御参考]
[[20080403012955]]『期間計算 お助けください』(さつき)
 (dack)

 


 MD忘れてたッ
 (DDDSSS)

 1916/6/3  表示形式 ユーザー定義  yy/mm/dd として
16年6ヶ月3日 おおよそこのくらいになりませんか、  ズレが +- 4日以内くらいかな
AAAS

 28以内になったらずれもないと思いますよ。

  


 表示形式によって何年何ヶ月何日と表示する方法は少し違和感があります。
[A1] 1900/1/1 と [B1] 1901/1/1 の期間がどのように表現されるか?
 
=TEXT(B1-A1,"yy年mmヶ月dd日")  = 00年12ヶ月31日
=DATEDIF(A1,B1,"y")&"年"&DATEDIF(A1,B1,"ym")&"ヶ月"&DATEDIF(A1,B1,"MD")&"日"  = 1年0ヶ月0日
 
前者の結果だけを提示された場合、これを見た人はどのように解釈するでしょうか。
(みやほりん)(-_∂)b

 みなさん、いろいろなアドバイスありがとうございます。

 過去ログから[[20060630173748]]を探し出したことまではよかったのですが、そのため
 に間違ってそのままレスしてしまったことに気がつきました。
 関係者のみなさまにご迷惑をお掛けしたことを先ず深くお詫び申しあげます。<m(__)m>

 さて、私は業務上必要に迫られ、単純に社員が定年まであと何年何か月と何日で定年を
 迎えることになり、それは、同時に再雇用制度適用の該当者が何人いるか?ということ
 を事前に把握したいという欲求からこのような質問をいたしました。

 単純と思っていた計算(ある一定期間の計算)も、みなさんのご意見から奥深いものと
 思い知らされました。

 みやほりんさんにお尋ねしたいのですが、ご提示の
 =DATEDIF(A1,B1,"y")&"年"&DATEDIF(A1,B1,"ym")&"ヶ月"&DATEDIF(A1,B1,"MD")&"日"
 という関数では、うるう年(日の算出に)は反映されるものでしょうか?
 よろしくお願いします。<m(__)m>


 > =DATEDIF(A1,B1,"y")&"年"&DATEDIF(A1,B1,"ym")&"ヶ月"&DATEDIF(A1,B1,"MD")&"日"
 > という関数では、うるう年(日の算出に)は反映されるものでしょうか?

 横から失礼します。m(__)m

 これまでのスタンスは「多少の誤差は、この場合無視(?)することとします。」だったと思うのですが、
 アバウトでは無くなったのでしょうか?

 ※ DATEDIF(A1,B1,"MD") ← この関数(MDオプション)は、もともといい加減な値を返して来ますので、
   「うるう年」を云々するまでもなく、厳密な期間計算には使えません。
  サンプルデータで試算してみます。

  行   ____A____  ___B____  _____C______  ___D___  
   1   今日       定年      期間          Version         コメント
   2   2007/1/30  2008/3/1  1年1ケ月 0日  XL2002  この期間をちょうど1ヵ月と云う人は滅多にいないと思います。
   3   2008/1/30  2009/3/1  1年1ケ月-1日  XL2002  この期間は1ヵ月にも満たないらしいです。ラフに考えるなら許せるかも。。
   4   2009/1/30  2010/3/1  1年1ケ月-1日  XL2002  でも、余剰日数を出しているのに、マイナスって何?
   5                                                  
   6   2007/1/30  2008/3/1  1年1ヶ月 2日  XL2007  XL2007では上と同じ日付でも異なった値が返ります。
   7   2008/1/30  2009/3/1  1年1ヶ月 2日  XL2007  (でも、XL2007が正しいと云う訳ではありません。困った関数です)
   8   2009/1/30  2010/3/1  1年1ヶ月 2日  XL2007      
   9   2007/3/30  2008/6/1  1年2ヶ月 1日  XL2007  

 > 単純に社員が定年まであと何年何か月と何日で定年を迎えることになり、
 > それは、同時に再雇用制度適用の該当者が何人いるか?ということを事前に把握したい
 こうお訊ききすると、怒り出した質問者さんもいるのでヒヤヒヤしていますが、
 この目的に、【何日】まで算出する必要がありますか?

 私の個人的感覚ですが
 1.社員別にはラフに「あと何年何か月」が分かれば十分ではないですか?

 2.集計タイミングは、月1回(当月末基準)でいい様な気がするのですが。
   毎日基準を変えてチェックする必要がありますか?
   
     ※ 月末基準や、月初基準なら計算も楽になります。

 3.定年者の数は、今月○人、来月○人、2か月先○人、3か月先○何人、・・・・、5年先○人
    くらいが見通せれば十分ではないですか?

  (半平太)

 それでも、やはり【何日】まで出したいとお考えでしたら、
 上述サンプルの日において、「何か月と何日間」が正しい、とお考えなのかお聞かせ下さい。(追記 半平太)

 半平太様、ありがとうございました。

 おっしゃるとおり、当初は「多少の誤差は、この場合無視(?)することとします。」だったのですが、
 試行錯誤していく内に「思考錯誤」していました。m(__)m

 ご指摘のとおり、「定年者の数は、今月○人、来月○人、2か月先○人、3か月先○何人
 ・・・・、5年先○人くらいが見通せれば十分ではないですか?」そのとおりでした。m(__)m

 「DATEDIF(A1,B1,"MD") ← この関数(MDオプション)は、もともといい加減な値を返して来ます」
 ということが理解できたことは収穫でした。
 ありがとうございました。

 みなさんのアドバイスにより当初の悩みは解決できました。
 みなさまには、重ねて御礼申し上げます。m(__)m

 


私なら、A1に今日の日付を =TODAY()で、B1に、60歳になる日にち、2016/3/31 C1に、=DATEDIF(A1,B1,"Y")&"年"&DATEDIF(A1,B1,"YM")&"ヶ月"&DATEDIF(A1,B1,"MD")&"日"
生年月日を入れるくらいなら、60歳到達する年度末を入力した方がいいのでは・・・・(小鉄)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.