• ベストアンサー

エクセルで時間計算

給与の残業計算をエクセルで入力・計算をしているのですが、時間の合計が合いません。 ずっと同じシートを使用していて、容量がいっぱいになったので新しいBOOKで作りました。 前のシートの書式設定を見ても、まったく同じ(標準だと思います。ユーザー定義でもありませんでした)なのに、どうして正しい表示にならないのでしょうか? 教えてください。 弊社の計算式は遅刻時間の合計と残業時間の合計を足して残業計算しています。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tsubuyuki
  • ベストアンサー率45% (699/1545)
回答No.3

慌てていらっしゃるのはわかるのですが・・ 具体的に「どう合わないのか」をあらかじめ書いていただけると 回答する側も推察しやすくて助かります。 「全く違う」のか「微妙に違う」のか、それだけでもヒントになります。 さて、質問・他さまお二人の回答・補足を拝見していて 一点がどうしても気になったので、確認をさせてください。 質問文中に > 前のシートの書式設定を見ても、まったく同じ > (標準だと思います。ユーザー定義でもありませんでした)なのに、 > どうして正しい表示にならないのでしょうか? とありますね。 実際にシート上に表示されている「時間」の形式を確認・補足ください。 具体的には「1.5(時間)」と言う表示なのか、 それとも「1:30」と言う表示をしているのか、という事です。 これにより、出来るアドバイスも若干変わってきますので。 ちなみに前者であれば、小数未満の誤差によるものである可能性が高いです。 その場合は以下同文ですので、ここでは言及しないようにします。 後者「1:30」としている場合、 これを「1"時間"30分」を意味すると言う"時間"表示にしたいなら、 ユーザー定義で「 [h]:mm 」と指定してやります。 「 h:mm 」だと「1"時"30分」、つまり"時刻"と判断し、 24"時"に達すると0"時"に戻ってしまいます。 (時計の判断では25"時"はありえませんから。)

riko1164
質問者

お礼

すみません。 どう説明したら良いのかわかりませんが、弊社の始業時間が9時30分でエクセル(A列)には「9:30」と表記しています。 そこから各社員が出勤してきた時間を別セル(D列)に入力してその差引した時間が、F列に出るようになっています。 遅刻が多い人はマイナス表記もされるようになっています。 D列に何も入力されていない場合、F列の合計が「199:30」となるんですが(21日勤務の場合) 「7:30」と表記されているんです。 いろいろと調べてtsubuyukiさんのおっしゃっている、ユーザー定義にすれば解決すると思われるんですが、前のシートはそのユーザー定義になってないのに「199:30」と表記されているんです。 それはなぜなのかわかりません。 わかり難くて申し訳ありません。

その他の回答 (2)

  • masatsan
  • ベストアンサー率15% (179/1159)
回答No.2

No1さんの疑問と同じで。いっぱいになる前の物はよろしかったのでしょうか? それはそれとして、 どうやって新たなbook(ファイル)を作成されましたか? いっぱいになったファイルをコピーして、データを消せばよいと思いますが。

riko1164
質問者

お礼

ありがとうございます。 いっぱいになる前のデータはきちんと表記されていたんですが、シートを一から作り直したら表記があわなくなりました・・・。 masatsanさんのおっしゃっている案も考えましたが、基のデータを軽くしようと思って一から作り直すことにしたんです。 そうしたら、このような疑問にぶち当たって自力で解決できないから、質問しました。 ありがとうございます。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! >ずっと同じシートを使用していて、容量がいっぱいになったので新しいBOOKで作りました。 とありますが、新しいBOOKにしたので計算が合わなくなったのですかね? それとも以前から同じ症状だったのでしょうか? 原因としては「浮動小数誤差」が考えられます。 =ROUND(遅刻時間セル,5)+ROUND(残業時間セル,5) のように小数点以下をある程度の桁数で丸めてみてはどうでしょうか? 他の原因ならごめんなさいね。m(_ _)m

riko1164
質問者

お礼

ありがとうございます。 新しいBOOKにしたら計算が合わなくなりました。 合わないというか・・表示の仕方が変というか・・・って感じです。

関連するQ&A

専門家に質問してみよう