グループ退職日の計算(Microsoft Excel)
マニの国では、公務員は55歳になった翌日の3月の最終日に退職します。 (3月31日に55歳になると、同じ日に退職します。)従業員の生年月日を考えると、マニは55歳になる時期を把握できますが、次の3月31日の計算方法を把握できません。
人が55歳になった後の3月31日の計算には、さまざまな方法があります。ただし、すべての式に共通していることの1つは、人の誕生日が4月1日より前かどうかを何らかの方法で把握する必要があることです。 (誕生日が3月31日より前か、3月31日かを判断することもできますが、実際には4月1日と比較すると計算が簡単です。)
個人の生年月日がセルA1にあるとすると、使用できる数式は次のとおりです。
=IF(DATE(YEAR(A1)+55,MONTH(A1),DAY(A1))<DATE(YEAR(A1)+55,4,1), DATE(YEAR(A1)+55,3,31),DATE(YEAR(A1)+56,3,31))
これは、55歳になる日付と55歳になる年の4月1日を比較します。日付が4月1日より前の場合は、55歳になる年の3月31日が使用されます。日付が遅い場合は、翌年の3月31日が使用されます。
これは、次のように、誕生日をその年の4月1日と比較するだけで簡単に少し短縮できます。
=IF(A1<DATE(YEAR(A1),4,1),DATE(YEAR(A1)+55,3,31),DATE(YEAR(A1)+56,3,31))
もちろん、誕生日が発生する月を見るだけで、さらに短くすることもできます。
=IF(MONTH(A1)<4,DATE(YEAR(A1)+55,3,31),DATE(YEAR(A1)+56,3,31))
数式をさらに短縮しようとするもう1つの論理的な手順は、次の方法でDATE関数自体の中で月の比較を行うことです。
=DATE(YEAR(A1)+IF(MONTH(A1)<4,55,56),3,31)
IFステートメントを完全に削除することで、式をさらに短くすることができます。
=DATE(YEAR(A1)+55+(MONTH(A1)>3),3,31)
この式が機能するのは、比較(MONTH(A1)> 3)がfalseかtrueかに応じて0または1を返すためです。
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(9775)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。
linkグループ退職日の計算。