エクセル 時間 計算。 Excel(エクセル)で時給計算や給与計算をする方法|時給×時間を正しく表示する

【エクセル時短】時間計算をしたら「######」に! マイナスの時間は3つの関数で表示できる

エクセル 時間 計算

経過時間を求める• 終了時間を計算する 経過時間を求める 経過時間を求めるには、終了時間から開始時間を引きます。 終了時間が 24 時を超えるときは、終了時間の表示形式に [h]:mmを設定します。 表示形式の設定は [セル] を右クリックして [セルの書式設定] から [ユーザー定義] の [種類] に入力して [OK] をクリックします。 結果が時間形式になるときは [セルの書式設定] から [標準] をクリックして [OK] をクリックします。 時単位の表示 1:30を 1. 合計時間を求める 1 ヵ月分の勤務時間のように、経過時間の合計を求めるには「」を使用してすべての経過時間を合計します。 24 時間を超えるので表示形式には [h]:mmを設定しています。 終了時間を計算する 終了時間を計算するには、開始時間に経過時間を足します。 終了時間が 24 時を超えるときは表示形式に [h]:mmを設定します。 これをしないと 25:00 が 1:00 のように表示されます。 表示形式の設定は [セル] を右クリックして [セルの書式設定] から [ユーザー定義] の [種類] に入力して [OK] をクリックします。

次の

【Excel】時間の計算がうまくできない!給与計算で必須となるエクセルのテクニック

エクセル 時間 計算

はじめに 残業が発生するのは、実働8時間を超えた場合のみです。 契約時間が実働7時間であったとしても、8時間までは残業とみなされません。 下の例では、3月1日と2日は8時間を超えますが、3日は8時間未満ですよね? A B C D E F G H I J 1 月日 曜日 開始時刻 終了時刻 休憩時間 勤務時間 時間内 時間外 時間内支給額 時間外支給額 2 3月1日 火 9:00 18:15 1:00 8:15 3 3月2日 水 9:00 20:30 1:00 10:30 4 3月3日 木 9:00 17:00 1:00 7:00 5 3月4日 金 9:00 17:15 1:00 7:15 6 3月5日 土 7 3月6日 日 8 3月7日 月 9:00 17:30 1:00 7:30 9 3月8日 火 9:00 18:00 1:00 8:00 10 3月9日 水 9:00 19:45 1:00 9:45 11 3月10日 木 9:00 17:00 1:00 7:00 12 3月11日 金 9:00 17:45 1:00 7:45 13 3月12日 土 14 3月13日 日 15 3月14日 月 9:00 18:15 1:00 8:15 16 3月15日 火 9:00 19:30 1:00 9:30 17 出勤日数 合計 18 時給 1000 円 時間外 1250 円 契約時間 8:00 そこで、勤務時間から8時間内と時間外に振り分けるには、以下の3つのステップに従うことで実現できます。 あらかじめ基準となる8時間を任意のセルに代入しておく(J18セルに8:00を入れる)• 勤務時間が8時間以内であれば勤務時間そのまま、超える場合は8時間として時間内セルに求める• 勤務時間が8時間を超える場合は、勤務時間から8時間を差し引いた値を時間外として求める wanichan. net サイト メインブログ。 ちょっとした技術メモ。 Microsoft中心。 Webサイト管理等にまつわるネタ、サイトの更新情報等を発信中。 Expression Web初心者向けガイド。 ステップバイステップで解説していきます。

次の

Excel(エクセル)で24時間以上を計算する方法|勤務時間や残業時間の「時」「分」を合計する

エクセル 時間 計算

エクセルで勤怠管理をするときに必ず労働時間計算を行いますが、このとき注意しなければならない問題があります。 それは「 時間計算の計算過程で誤差がでることがある」というものです。 誤差が出ると給与計算や労働基準法遵守に影響するため、労務担当者にとっては頭の痛い問題です。 しかし 時間計算機能のある電卓で計算すると誤差がでないため、中には電卓で計算した労働時間を、エクセルに手入力する方もいます。 電卓で時間計算する場合、従業員が数十人以上いると、1ヶ月分の労働時間計算だけ数日かかります。 しかし電卓計算と手入力は、かえって計算ミスしやすく、また効率がよくありません。 なんとかエクセルで一気に計算したいものです。 このような時間計算の誤差を解決する方法はいくつかありますが「TEXT関数」を使う方法がオススメです。 電卓で計算する必要も、エクセルに手入力する必要もなくなり、 正確で効率的に労働時間計算、給与計算ができるようになります。 そこでこのページでは、誤差が出てしまう原因と、正確に時間計算する方法を解説していきます。 どういうときに誤差が出るのか 実は時間計算の誤差問題はエクセルに限った話ではなく、コンピューターを使った時間計算すべてで起きる可能性がある問題です。 具体的には、次の2つのケースで誤差が出ます。 「時間計算した時間」と、「直接入力」したものを「比較」したとき• 「時間計算した時間」を「丸めた(切り上げ・切り捨て)」とき それぞれ解説していきます。 「時間計算した時間」と、「直接入力した時間」を「比較」したとき 下の図は、青く囲われた「直接入力した時間(8:00)」と、赤く囲われた「時間計算した時間」(退勤時間 - 出勤時間 - 休憩時間で計算)をIF関数で「比較」したときの図です。 IF関数では、 赤く囲われたセルと、青く囲われたセルを比較し、時間が一致していたら「残業なし」、一致していなければ「残業あり」にしています。 全て「残業なし」になるのが正解です。 しかし結果は、正しくありません。 これはでは残業代計算したり、労務管理したりする場合に問題になる可能性があります。 なぜ誤差が出るのかは後ほど解説していきます。 「時間計算した時間」を「丸めた(切り上げ・切り捨て)」とき 下の図は、「退勤時間 - 出勤時間を15分で丸めた(切り捨て)」たときの図です。 丸め後の時間は「7:00」が正解ですが、誤差のせいで黄色く塗ったセルは「6:45」になってしまっています。 これは正しくありません。 このケースでも、やはり給与計算、残業代計算、労務管理で問題になります。 上の図では15分の差が出てしまっていますので、時給1,000円だと250円の差です。 このようなミスがある場合、労働基準法違反の可能性もあり、従業員から会社への信用がなくなります。 なぜ誤差が出るのかと、対策を知ることで正確で効率的に事務作業できるようになりましょう。 なぜ誤差が出るのか 誤差が出るのは、 コンピューターは時間計算するとき「シリアル値で計算する」というルールに基づくからです。 シリアル値とは1日を数字の1で表し、時刻を24で割った数値で表した数値です。 375」が9:00のシリアル値になります。 シリアル値にするとき、時刻が24で割り切れる数値であれば問題ないのですが、多くの場合、割り切れません。 16666666666666...... 無限に続く。 循環小数といいます 」で割り切れない数値になります。 16666666666666...... になるのと同じ理由からです。 いくらコンピューターが計算能力に優れているとはいえ、無限に続く数値を扱うことはできません。 そのため、どこかで四捨五入します。 誤差の原因は、エクセルの計算能力の限界 一般的にエクセル内部では 循環小数を15桁で四捨五入します。 4:00の場合は0. 16666666666666 7になります。 実は、これが誤差を生む原因になります。 循環小数であっても、 足し引き、丸め、比較しなければ問題ありません。 具体的には、出勤時間・退勤時間などをセルに入力する場合は、なんら問題ありません。 なぜなら 時刻を直接入力したときの誤差は、実務上問題ない誤差だからです。 ところが、出勤時間・退勤時間を使って 労働時間を計算したり、所定労働時間と比較したりするときに問題がでます。 なぜなら誤差がある数値を使って計算すると、 誤差が大きくなり、実務上問題が出るからです。 下の図の黄色く塗ったセルは、誤差が大きくなる例です。 D列の「退勤時間 - 出勤時間」はすべて「7:00」です。 しかし、E列の黄色く塗ったセルは最後の桁(15桁目)で誤差が出ています。 さらに、F列で 丸め処理を行うとシリアル値が大きく変わっているのがわかります。 これが、労働時間計算が狂ってしまう原因です。 こうした誤差は給与計算などに大きく関わるため、確実に修正しなければなりません。 関数を使って、セルへ直接入力したときと同じ状態にする 誤差を無くす最も簡単な方法は、TEXT関数とVALUE関数を使うやり方がおすすめです。 さきほど、「 時刻を直接入力するときは、誤差が最小になり、実務上問題ない」と説明しました。 この方法を使って正確な労働時間計算ができます。 TEXT関数とVALUE関数を使うことで、 時間計算結果を、「時刻を直接入力」したときと同じシリアル値に修正することができます。 下の図は、時間丸めの誤差を、TEXT関数とVALUE関数を使って修正した例です。 TEXT関数とVALUE関数を使わなければ、誤差によっておかしな計算結果になります(黄色いセル)。 しかしM列では、TEXT関数とVALUE関数を使い誤差を修正することで、正確な時間計算をすることができました。 TEXT関数とは TEXT関数とは、「値」を「文字列に変換」する関数です。 値は、上の例で「K2(退勤時間) - J2(出勤時間)」の時刻(シリアル値)を指定します。 「 表示形式」では、どのように書式設定するかを指定します。 労働時間計算では一般的に " h:mm"、計算結果が24時間以上になるときは "[h]:mm"と設定します。 (書式設定の詳細ついてはをご覧ください) "h:mm"や"[h]:mm"と設定することで、計算によって求められた値を時間と分で丸め処理(切り捨て)します。 つまり、誤差が生じる部分を切り捨て、「セルに直接入力」したのと同じことなります。 さきほど、「 時刻を直接入力するときは、誤差が最小になり、実務上問題ない」と説明しましたが、TEXT関数を使うことでこの効果を得ることができます。 値を文字列に変換とは? 「値を文字列に変換」というと「値だって文字はないのか」と疑問に思う方もいるのではないでしょうか。 しかしながら、 コンピューターの中では値と文字は別物として扱われます。 例えば「1:00」は裏で「0. 041666... 」という値(シリアル値)を持っています。 ただし、 文字列に変換された「1:00」は裏でシリアル値を持たず、「イチ コロン ゼロ ゼロ」という 文字としてコンピューターに扱われます。 そのため、文字列として入力された時刻は値ではないため、本来であれば計算や比較ができません。 しかし、エクセルには「 文字列として入力された数字は、値とみなす」という計算補助機能があるため、私たちユーザーは、値や文字列だなどと、ややこしいことを意識せずにすんでいます。 ただ、この計算補助機能は完全ではありません。 そのためVALUE関数が必要になります。 VALUE関数とは VALUE関数とは、文字列を数値に変換する関数です。 さきほど説明したように、TEXT関数だけでも計算補助機能があるため、問題ないことも多くあります。 しかし計算補助機能は完全ではありません。 具体的には、 文字列と時刻を比較するときは補助機能が働きません。 下の図は、さきほども登場した「時間を比較するときの誤差」の図です。 E列の残業有無ではIF関数を使って、所定労働時間(オレンジ色)に入力された「値」と「労働時間」を比較し、 一致していれば「残業なし」、一致していなければ「残業あり」になります。 全て「残業なし」が正解ですが、黄色く塗ったセルは「残業あり」と正しくありません。 誤差を修正するためにTEXT関数だけを使ったのが F列ですが、全て「残業あり」になってしまいました。 これも正しくありません。 原因は所定労働時間に入力された 「値」と、TEXT関数で修正された「文字列」を比較したためです。 このように、文字列と値を比較するときは計算補助機能が働かず、別物扱いになります。 そのため、 G列ではTEXT関数で文字列に修正されたものを、 VALUE関数でもう一度数値に変換します。 こうすることで 値同士を比較することになり、正しい結果になります。 応用編 VALUE関数の代わりに、TEXT関数に1を掛けても数値に変換できます。 簡潔に書くことができるため、慣れてきたらこちらのほうがオススメです。 その他の方法 TEXT関数、VALUE関数を使って誤差を修正する以外の方法に、「シリアル値を10進法に変換し、誤差が生じない桁数で計算してから60進法に戻す」などの方法があります。 秒単位の精度ならばさらに60 秒 を掛けて 86,400を掛けて計算し、86,400で割り、シリアル値に割り戻します。 しかし、この方法は計算式が長く複雑になり、ミスが起きやすくなるためオススメできません。 実務では正確性と効率が求められますので、一番簡単なTEXT関数とVALUE関数を使った方法がオススメです。 まとめ 労働時間計算を正確に行わなければ、給与計算や労働基準法遵守に影響します。 エクセルで勤怠管理をする以上、時間計算誤差の問題は必ず生じる問題です。 電卓で計算すれば時間計算誤差は生じませんが、効率的ではありません。 TEXT関数とVALUE関数を使って正確に時間計算し、労務管理業務を効率的にすすめましょう。

次の