[[20030120162559]] 『ある日から満60歳になるまでの正確な日数』(デフィカルト) >>BOT

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

 

『ある日から満60歳になるまでの正確な日数』(デフィカルト)

ある日(本日等)から、ある誕生日(1940.5.6等)の人が、その人が満60歳になる年度の3月末日 までの正確な日数(土日含む)。

 やや分かり難いとは思いますが、要は、社員の会社の定年までの正確な日数をカウントできないか、ということです。

 例えば、1952年8月10日生まれの社員は、2012年度の3月末日(=2013年3月31日)付けで定年退職しますが、その日までの、例えば2003年3月4日までの正確な日数、ということです。

 これを、@誕生日が一覧でセルに表示されている、A定年は変数(60歳でも可) Bカウント開始日も別に変数設定 というイメージで日数をカウントしたい、ということなのです。

 人事に使いますの。できそうでできません。どなたか助けてください。


 上記の3つ条件の内3番目がよく判らないので1と2に対しての回答を

 いたします。

 

 シートが以下のようになっているとして説明します。

 

     A     B

 1   60

 2

 3 1943/3/31    70 ←ここには下で説明する

 4 1943/4/1    436     関数が入っている

 5 ・・・・・

 

 A1に定年の年齢が入っているとし、生年月日がA3から下に入って

 いるとします。

 

 ここでB3のセルに以下の関数をコピペしてください。

 

 =DATE(IF(MONTH(A3)<4,YEAR(A3)+$A$1,YEAR(A3)+$A$1+1),3,31)-TODAY()

 

 ここで、「$A$1」の部分が定年の「定年の年齢」を指しており、

 A3は生年月日を指しています。

 これを貼り付けた後で、そのセルの右下をダブルクリックすると

 A列のセルに値が入ってるところまで全てコピーされます。

 

 これで、退職までの日数は出ると思います。

 (きん)


 こちら事務局です、同じ項目なので、こちらに移動しました。

 (kazu)


『再度定年日数』(デフィカルト)

 早速のご回答有難うございました。

 ただ、ご回答頂いたのは、「処理をした日の翌日」(今日なら明日)から定年までの日数、というものですね。Bの条件とは、それではなくて、別途指定した日、例えば来月の10日(2003.2.10)の翌日から定年までの日数は?というものなのです。お分かり頂けますでしょうか。

 今のご回答でもバッチリなのですが、できればこの条件も反映させたいのですがいかがでしょうか。

 宜しくお願いいたします。


 そういうことであれば、B1にその日付が入っているとした場合に

 前出の関数の一部を変更することにより可能だと思います。

 

 =DATE(IF(MONTH(A3)<4,YEAR(A3)+$A$1,YEAR(A3)+$A$1+1),3,31)-$B$1

                               ↑

  ここを変更しました。

 

 「TODAY」という関数は今日の日付を求める関数なので、この部分を

 指定の日付に変更することにより可能のはずです。

 

 ここで作成した関数の説明をすると以下の通りになります。

 「A3に入っている日付の月の部分が4よりも小さかった時は年には

  定年の年齢を加え、それ以上の時にはさらに1を加算した年の3月

  31日を求めて、その日から指定の日付を減算した値を求める」

 というようになっています。

 

 これで、ご希望のものになったと思います。

 (きん)


 こちら事務局です。同じ項目なので、こちらに移動しました。

 (kazu)


『最後の追加:定年』(デフィカルト)

何度も済みません。親切な回答有難うございます。

そこで、またまた追加させて頂きたいのですが、「ある誕生日の人の、ある日(の翌日)から、ある年齢の定年の年度末、までの正確な日数」は完全にOKなのですが、同じ条件での「正確な月数」も出ますでしょうか?ちなみに、カウント開始は日(2003/2/1)指定でも月指定(2003/2)でもどちらでもいいですが。

どうも式を理解していないせいで応用がききません。これでこの質問は終わり(の予定?)ですので、宜しくお願いいたします。


 「正確な月数」という表現が微妙なのですが2003/02/01から2003/03/31は2ヶ月と

 いう判断でいいんですよね?

 

 前回の式の中で「YEAR」という関数を使ったのですがこれは例えばA1のセルに

 「2003/02/01」と入っていた場合に「=YEAR(A1)」とすると「2003」という値、

 つまり年が値として求められます。

 また同様に「MONTH」という関数では月が求められます。

 これらを使ってB1のセルに「2003/03/31」が入っていると2つの期間の差は

 以下の式で求められます。

 

 =(YEAR(B1)*12+MONTH(B1))-(YEAR(A1)*12+MONTH(A1))+1

    ↑    ↑     ↑      ↑

    2003    03     2003      02 

 この場合の結果は「2」になります。

 

 前回の式と今回の式を組み合わせれば月数は出ると思います。

 但し、上記の式を使おうとした場合には退職となる日付を一度どこかのセルに

 表示してから使う方が楽になると思います。

 つまり、

 

 =DATE(IF(MONTH(A3)<4,YEAR(A3)+$A$1,YEAR(A3)+$A$1+1),3,31)

 

 の部分を別セルに・・・ってことです。

 こんな説明で判りますでしょうか?

 (きん)


コメント返信:

[ 一覧(最新更新順) ]


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