• ベストアンサー

Excelで時間の合計値がおかしい(sum)

私はExcelでタイムカードを作成していたのですが、なぜだか『SUM』の関数で実働時間(例;「7:00」など)の合計値を出そうとすると、途中まではちゃんとした合計値なのに途中からいきなり数字がおかしくなってしまいました。 ちなみに、少しネットで調べて表示形式を「ユーザー定義 h:mm」にした方がいいとのことなので、そのようにしてもやはりおかしいです。 何か、他に原因があるのでしょうか? どうすればいいのか、どなたかご存知の方がいらっしゃいましたら教えて下さい。お願いします。

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

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

「途中からいきなり」が、具体的にどういう事でしょうか? 可能性としてユーザー定義が不十分の場合があります。 h:mm では、24時間を超えると、0に戻ります。 [h]:mm と[ ]をつければ、24時間を超える時間も表示できます。 ご質問がこのことでなければ、具体的な数字をご教示ください。

rie78
質問者

お礼

お礼が遅くなってすみません。 他の皆様からも同じように「どのようにおかしくなったか分らない」との指摘をいただきました。 けれど、ken-nosukeさんの想像通り、確かに合計値が24時間を超えると0に戻ってしまうということが起きていました。 教えていただいたとおり、やってみたいと思います。 ありがとうございました。

その他の回答 (3)

  • ryo_ky
  • ベストアンサー率47% (112/237)
回答No.4

No3さんが指摘している内容だと思うので,少し補足を. excelにおいて時間というのは表示形式が標準なら以下の数値になります. 1日=24時間=1 半日=12時間=0.5 1時間=1/24≒0.0416666666… 1分=1/(24*60)≒0.0006944444… h:mmで合計を出すと24時間を越した時点で翌日になってしまい,例えば合計が36時間なら 1900/1/2 12:00 という状態になると思います. これは表示形式を時刻ではなく年月日(yyyy/mm/dd h:mm)にすると分かりますが, 0=1900/1/1 0:00 1=1900/1/2 0:00 2=1900/1/3 0:00 となっている為です. この表示をh:mmのみにすれば24を超えるとまた0から始まるという訳です. そこで[h]:mmの場合はhが24を超えても加算できるので,36時間でも12:00にはならず,36:00と表示されます. この表示にする為には表示形式をユーザー設定にして,[h]:mmを入力すればできます.

rie78
質問者

お礼

お礼が遅くなってすみません。 ryo_kyさんの想像通りの、24時間を超えるとなぜか0になってしまうという状況でした。 分りにくい質問文なのに、丁寧に教えていただき本当にありがとうございました。 やってみたいと思います。

noname#204879
noname#204879
回答No.2

説明の内容が漠然とし過ぎるので、的確なアドバイスが出来ません。 具体的なデータ例を示して、どのように「途中まではちゃんとした合計値なのに途中からいきなり数字がおかしくなってしま」ったのかが視覚的に分からないと、「どうすればいいのか」教えられません。

rie78
質問者

お礼

お礼が遅くなってしまいすみませんでした。 他の皆様にも同じように『どのようにおかしいかわからない』との指摘をいただきました。 本当に申し訳ありませんでした。 次からは気をつけたいと思います。 ありがとうございました。

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

こんばんは! 具体的にどのようにおかしいのか判らないのですが、 この手の不具合として「浮動小数誤差」の問題が考えられます。 時刻(時間)は小数点以下の数値となりますので、それらを計算する時微妙な誤差が生じます。 そこで一案として、小数点以下を5桁程度で丸めて計算すれば解消することがあります。 数式がこちらでは判らないので、 =ROUND(セル,5)+ROUND(セル,5) といった感じです。 ※ 他の原因ならごめんなさいね。m(_ _)m

rie78
質問者

お礼

お礼が遅くなってしまいすみません。 他の皆様にも『どういった感じでおかしいかわからない』との指摘を受けました。 申し訳ありません。 tom04さんに教えていただいたことも、含めて少しやってみたいと思います。 回答ありがとうございました。