給与計算で60進法を10進法に変換する方法

給与計算等でエクセルを使用して計算する場合、60進法の表示を10進法に変換したい場面が、あると思います。
 15.3 →  15.5 
エクセルの関数で、一度に変換できるものはありません。
EXCELのTRUNC関数とMOD関数を利用することで60進法を10進法に換えることができます。

60進法で影響される部分は小数点以下ですので、まずは整数を取り出すためTRUNC関数を利用します。
■EXCELのヘルプ
 =TRUNC(数値,桁数)
  数値の小数部を切り捨てて、整数または指定した桁数に変換します。
■利用方法
 =TRUNC(15.3,0) → 15

[STEP2]小数部の取り出し
 次に小数点以下をMOD関数を利用して小数部を取り出します。
■EXCELのヘルプ
 =MOD(数値,除数)
  数値を除数で割ったときの剰余を返します。
■利用方法
 数値を「1」で割ることで余りである小数部が取り出せます。
 =MOD(15.3,1) → 0.3

[STEP3]小数の変換
 STEP2で取り出した小数(60進法)を0.6で割ることで10進法に変換できます。
■計算式
 =0.3/0.6 → 0.5

[STEP4]計算式のまとめ
 STEP1~STEP3をまとめると以下の通りになります。
■計算式
 =TRUNC(15.3,0)+MOD(15.3,1)/0.6 → 15.5

【まとめ】
 単純に時間を「.3」を「.5」に変換するのであれば、EXCELの置換機能を利用することも考えられます。しかし、労働時間を1分単位で計算する会社も増えてきており、単純な置換では対処できなくなっています。今回の「60進法を10進法に変換したい!」ではこのようなケースで有効活用していただけるのではないかと思います。なお、「34分」など、10進法に変換する際に[STEP3]で割り切れないケースがありますのでご注意ください。

 

コメント


認証コード6282

コメントは管理者の承認後に表示されます。