• ベストアンサー

エクセルで同じ計算式を入れているのに答えが違う

会社で勤務報告書をエクセルで作成しようとしています。 左より氏名がD4に、始業時間がI4に終業時間がJ4にセルの書式を時刻にして入力してあります。8:00 21:30のように次に拘束時間K4のセルに=SUM(J4-I4)の式を入れてあります。その隣L4が休憩時間、実車働時間N4、待機時間O4、実労働時間P4と区分けしてあり、その隣に残業時間、深夜残業時間セルが続きます。 実労働時間のセルには=SUM(K4-L4)の式が入れてあります。 実車時間のセルに=SUM(P4-O4)と入れてあります。P4セルと同じ 時間をO4セルに入れた場合、(実車時間がなくすべて待機だった時等) シートのツールオプションの編集で0値のチェックをはずしていますので。 空白になるのはずですが、ある行では######と表示されたり(確認すると-2.775576-E17と表示)、ある行では0:00と表示されてしまいます。 その場合の計算結果の確認をすると答えが2.77556E-4となっています。 まったく、わからなくて、困っています。 お分かりになる方がいらっしゃいましたら、何卒ご教授下さい。 よろしくお願いします。

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

  • ベストアンサー
回答No.3

細かい所までお伝えしづらいのですが、考えられるのは、 1.時間を入れるセルが、時間の書式になっていない。 2.時間の計算は、場合により=day(), =hour(), =minute()などを使う必要がある。 3.1.の書式が異なるセル間では、入力した数値の認識が異なり、思いもよらない数値結果になる場合がある。 こんなところです。関数については、ヘルプでご確認下さい。 なお、計算式は、引き算と思われますが、その場合、合計数値を求める関数、=sum()は、不要かと思われます。

namidakko
質問者

お礼

回答ありがとうございました。 明日、早速確認してみます。 ありがとうございました。

namidakko
質問者

補足

色々やってみて、教えていただいたとおり、合計数値を求める関数、=sum()をはずしたところ、うまくいきました。理由はわかりませんが、 結果オーライでした。 本当にありがとうございました。

その他の回答 (3)

  • spnlight
  • ベストアンサー率46% (15/32)
回答No.4

>実車働時間 車を使ったお仕事のようですね、もし日付をまたがって勤務するようなパターンで仮に20:00~7:00の勤務なら単純に数値を入れるとエラーになりますね。 その辺を考慮して作成すれば良いと思います。 入力で8/11 20:00~8/12 7:10と入力するとか、 =SUM(J4-I4)を=IF(I4<J4,SUM(J4-I4),SUM((J4+1)-I4))にするとか

namidakko
質問者

お礼

回答ありがとうございました。 確かに、日付をまたいで勤務しています。 明日、早速確認してみます。 ありがとうございました。

回答No.2

先日同じようなツール(勤怠管理)を作成しました。 >空白になるのはずですが、ある行では######と表示されたり(確認する>と-2.775576-E17と表示)、ある行では0:00と表示されてしまいます。 計算式を入れていれば、空白になる事は無いのではないでしょうか? 文章だけで把握する分には、0:00と出るのが普通かな? と思っていたところ、その通りでしたし、同じような経験もしました。 SUM以外の関数も必要になってくるかと思います。 IFで、=IF(0<●●●,"=●●●","") とか・・・。 こうすれば、マイナスになってる計算や、0:00は0より低い場合は空白になりますし、0より大きければ、その値をそのままセルに返すという方法もあります。 (説明が難しい・・・) 1:00などの時間計算は24時間を越えるとマイナスになったり 計算ができなかったりと私も苦労しました。 (PCでの1:00は1時間ではなく、あくまでも1時ですから計算がくるいます) 時間を分に変換して計算する方法もありますが、、、文章じゃなかなか難しいものですね・・・。ごめんなさい。 そのエクセルを見れば直せると思いますがもどかしいです・・・。 少しでもヒントになれれば幸いです。 たいした答えができずすみませんm(_ _)m

namidakko
質問者

お礼

ありがとうございます。 本当に、時間計算はむずかしいです 夏休みを利用して簡単なテスト用紙を作成して、 色々試してみたいと思います。 教えていただいた、IF関数も利用しようと思っています。 ありがとうございます。

  • precog
  • ベストアンサー率22% (966/4314)
回答No.1

計算機における減算は、鬼門のひとつです。 減算すると、見えていなかった(計算)誤差が出てきます。 原因を追究して、誤差が出る理由がわかっていてどうしようもない場合、表示で丸めます。ただし、丸め方によっては誤差が拡大してしまいますので慎重にデバッグする必要があります。

namidakko
質問者

お礼

早速の回答ありがとうございました。 式はコピーペーストして貼り付けているので、 やはり、入力してある時間に問題があるみたいですね、 じっくり見直してみます。 ありがとうございました。

関連するQ&A

  • エクセル・時間の合計が合わない

    実労働時間の1ヶ月の合計をだすのに、SUMを使ったのですが、 合計がすごく小さい数字になります。 表示は※※:※※で表示しています。 表の内容は下記の通りです。 4行目に題名 ・B出勤時刻・C休憩開始・D休憩終了・E退社時刻 F4・I4・L4・N4・Q4=0:00 G4・J4・M4・O4・R4=17:00 F  =IF($E5-F$4>0,$E5-F$4,0)-IF($B5-F$4>0,$B5-F$4,0) G  =IF($E5-G$4>0,$E5-G$4,0)-IF($B5-G$4>0,$B5-G$4,0) I  =F5-SUM(J5:$K5) L  =IF($D5-L$4>0,$D5-L$4,0)-IF($C5-L$4>0,$C5-L$4,0) M  =IF($D5-M$4>0,$D5-M$4,0)-IF($C5-M$4>0,$C5-M$4,0) N  =L5-SUM(O5:$P5) O  =M5-SUM(P5:$P5) Q  =I5-N5  (実労働時間17時までの1日の計) R  =J5-O5  (実労働時間17時からの1日の計) Qに=SUM(Q5:Q14) Rに=SUM(R5:R14) を入力しましたが、まったく違う時間数になります。 どうすれば正しい計算式がでるのでしょうか? お教え願いたくお願い申し上げます。

  • 勤怠の集計表をエクセルで作成しました。

    勤怠の集計表をエクセルで作成しました。 実際に手計算すると0:00になるのに、関数を組んだところ、###########・・・と表示されます。 どうしてですか? 内容は・・・ 『時』『分』を分けてセルに入力(例:A1セル→8、B1セル→:、C1セル→30)すると、 一日の労働時間を求めるようになっており、『残業』、『深夜残業』も求めるようにしています。 さらに表の下部に求められた時間の合計が表示するように作りました。 実際にテストで入力してみたところ、始業が14:00、終業が22:00(休憩なしで、8時間労働) にすると労働時間が求められ、『深夜残業』が0:00と表示されますが、『残業』が ##############・・・となり、カーソルを合わせると「負の日付又は時間は########と表示します」 とメッセージが表示されます。 しかし、実際は0:00と表示されてきてほしいのですが、上記のように表示され、表下部『残業』合計 が正しい数字になってきません。 いろいろと関数を組みなおしてみたのですが、結果は同じでした。 教えてください。よろしく御願いします。 ちなみに、私が組んだ関数は以下の通りです。 =IF(J6>"22:00",O6-"8:00"-R6-P6,IF(J6<"22:00",O6-"8:00"-P6)) 上記セルの内容は以下の通りです。   J6・・・終業、O6・・・労働時間、R6・・・深夜残業、P6・・・早出時間  基本となる時間は、   始業・・・8:30、終業・・・17:30です。

  • Excel #VALUE!のエラーについて

    Excel2000です。「#VALUE!」のエラーを修正することが出来ません。 日報を作りました。一日の作業時間を1ヶ月分集計するものです。 内容は下記の通りです。 セルM17にその日の作業時間の合計が入ります。 セルN17は定時(残業なし)の時間が入ります。7.5時間です。入力がない時には表示しない。 セルO17は残業時間です。M17-N17になります。 セルのM17には「=SUM(D17,F17,H17,J17,L17)」 セルのN17には「=IF(M17>=7.5,7.5,"" )」 セルのO17には「M17-N17」 と入力しました。 例えば休日の時には全てが入力されません。この時にO17のセルに「#VALUE!」のエラーが出ます。このエラーが表示されなければ良いのですが?。 宜しくお願いします。

  • excelの時間計算

    excel 2007使用。 時間計算の式についてお聞きしたく、詳しい方ご教授願います!! <1> 8時30分から17時20分まで就業し、うち1時間の休憩をひいた時間を セルに表示させたい。 この場合、拘束時間は8:50ですが、休憩を引いた値「7:50」を出したい。 セルは 「830」「1720」で入力していますが、結果は750ではなく、 ":"が入った状態(7:50)と出したい。 <2> 上で算出した休憩を引いた勤務時間の小計(週ごと)、合計(月)を作りたい(SUM?) <3> 個々に入力した残業時間の小計(週ごと)、合計(月)を作りたい(SUM?) 残業時間個々のセルは「1:00」(1時間)、「0:40」(40分)と":"が入った状態で入力しています。

  • エクセルでの計算結果の数字表示

    エクセルで集計表を作成しました。 L10のセルに=L9+J10 L11のセルに=L10+J11 L12のセルに=L11+J12 L13~ L14~ L15~ こんな感じです。計算式を入れて正しく計算はできるのですが・・・ 例えば12行目までデータが入力されて「L12」のセルに累計結果表示されますが、13行目以降のセル「L13~15」にも「L12」の累計結果が表示されて見栄えがよくないのですが!!  何か方法はあるのかしら?よろしくアドバイスお願いします。

  • エクセルで

    いつもお世話になります Range("l" & (t + 1)).FormulaR1C1 = "=ROUNDDOWN(SUM(R[-1]C*1.05),0)" 上の式でl列のt行の1行下に消費税を出してます このセル  ("l" & (t + 1))  と  ("月間売上").[J4]   シ-ト月間売上のJ4を=で結びたいのですが 式がわかりません Sheets("月間売上").[J4].FormulaR1C1 = Sheets("1日")("l" & (t + 1))  元のシ-トは 1日というし-とです 宜しくお願いいたします

  • 時間計算から時給計算の誤差

    素人で、調べながらやっているのですが、どうしてもわからないので、質問させて下さい。 日々の実労働時間を、始業時間(E)と、就業時間(F)より導き、 7日間間隔でSUMを利用して週計実労働時間(H)を表示させています。 (H)をもとに、週40時間以内は(I)に表示し、超過分は(J)に表示するように導いています。 IとJをさらにSUMを利用してそれぞれ月計をだしています。 月計I×時給(F16)=基本給 月計J×時給(F17)=時間外手当 で月額給与を導いています。 基本給、時間外手当の計算結果に小数点以下が発生する場合 切り上げ表示を行いたく、基本給を求めるセルに ROUNDUP(J1*F16,0)を入力しました。 手で計算すると4,462.5円になるのですが、 上記の式ですと、4464円となり、2円きり上がってしまいました。 4,463円になるようにするには、どういった式をいれるといいのでしょうか? わかりにくい文章ですみません。 よろしくお願いいたします。

  • EXCELで計算式を入れたのに計算してくれない

    Aの列の計算はしてくれるのに Bの列にコピーして計算式も合っているのに 計算してくれずに「0」になってしまいます。 (答えは当然0ではないです) 表示形式の違いかな?とも思いましたが違うようです。 ちなみに計算式の元は 「=SUM(J8:J38)+INT(SUM(K8:K38)/60)」で 計算してくれない方は 「=SUM(L8:L38)+INT(SUM(M8:M38)/60)」です。 合ってますよね?同じですよね?なんで下の方は計算してくれないのでしょうか? あらゆる可能性を聞かせてください。 よろしくお願いいたします。

  • ExcelのSUM関数計算がどうしても合わない

    SUM(D3:O3) を P3のセルに入れているのですが、どうにも合計が合いません。 D3からG3までは全て0.0で、H3からO3まではそれぞれ0.1, 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, 0.5 が入っています。つまり合計は3.0となるはずなのですが、P3には2.9 と出てしまいます。どなたか解決法をご存知でしょうか。お願いします。

  • Excel2013で出勤簿・賃金計算書の作成

    Windows 8.1 Excel 2013で各月の出勤簿から賃金計算をしておりました。 これまでごOKWAVEで指導を頂きながら順調に出来ましたが、問題が発生致しました。 ここからが質問ですが、ご指導をお願い致します。 只今、作業中のExcelの表を掲載し説明を受けるのが筋ですが、Excelの表の掲載方法が判らないため長文になりますが文書にて質問させて頂きます。 Excelの表の各列・各行・セルの状況は下記の通りで、計算式(関数)が入っています。 7行目は項目が入っており、 A列は月日・B列は曜日・C列は始業時刻・D列は終業時刻・E列は休憩時間・F列は勤務時間 ・G列は時間内勤務時間・H列は時間外勤務時間・I列は時間内支給額・J列は時間外支給額となっています。 8行目から5月1日~38行目が5月31日となっています。 B列の曜日には、関数(=TEXT(A8,"aaa")(以下関数を示します)が入っており、A列に2016/5/1と入力すれば、自動的にB列に日曜日と表示されます。 C列・D列・E列の各セルの勤務時間は、手動で入力します。 F列の勤務時間には、5:00と入力し、=IF(COUNT(C9:D9)=2,D9-C9-E9,0) G列の時間内勤務時間には、12:00と入力し、=IF(B9="日",0,MIN($F$45,F9))保護あり H列の時間外勤務時間には、=F9-G9保護あり I列の時間内支給額には、=G9*24*$E$42保護あり J列の時間外支給額には、=IF(B9="日",H9*24*$E$43,H9*24*$E$44) 保護あり A列・B列は入力後、保護する。 C列・D列・E列は保護せず、手入力のみです。 それ以外は、関数が入っているので保護あり 40行以降は、セルごとに関数が入っています。 C41セルに全勤務労働時間として、=SUM($F$8:$F$38) F41セルに全勤務労働時間として、=SUM($F$8:$F$38) C42セルに定時労働時間として、=SUM($G$8:$G$38) G42セルに定時労働時間として、=SUM($G$8:$G$38) I42セルに時間内支給額として、=SUM($I$8:$I$38) C43セルに休日労働時間として、 H43セルに時間外勤務時間として、=$C$43 J43セルに時間外支給額として、=SUMIF($B$8:$B$38,$D$43,$J$8:$J$38) C44セルに早出労働時間として、=SUM($H$8:$H$38)-$C$43 H44セルに時間外勤務時間として、=SUM($H$8:$H$38)-H43 J44セルに時間外支給額として、=SUM($J$8:$J$38)-$J$43 C45セルに勤労日数として、=COUNT($C$8:$C$38) F45セルに契約時間として、固定で08:00 J45セルに定時労働時間支給額として、=I42 J46セルに休日労働時間支給額として、=J43 J47セルに早出労働時間支給額として、=J44 J48セルに総支給額合計として、=SUM(J45:J47) D43セルに休日労働時間検索のための、日 時給関係は、  E42セルに定時労働時間時給として、769円(変更があるので、保護せず)  E43セルに休日労働時間時給として、1,039円(変更があるので、保護せず)  E44セルに早出労働時間時給として、962円(変更があるので、保護せず) 現在、入力されている関数等は上記の通りです。 参考事項ですが、 日曜日以外は、平日の時給と同額で自動的に計算するように公式を入れていましたが、この度、祝日も日曜日と同額で計算するように関数を入れたいのですが、良い方法があればご指導をお願い致します。 勝手を申しますが、よろしくお願い致します。 説明不足で理解し難いかもしれませんが、よろしくお願い致します。 長文になりましたがご容赦下さい。 よろしくお願い致します。

専門家に質問してみよう