ここから本文です

時間の合計でうまく切上げ切捨てできませ

pir********さん

2017/3/3022:52:15

時間の合計でうまく切上げ切捨てできませ

ん…。
Excelで残業時間の合計をだそうと以下の
ような表を作りました。

A B C
1 開始時刻 終了時刻 残業時間
2 18:00 18:15 0:15
3 18:30 18:45 0:15



Cの列には終了時刻-開始時刻の数式が並ん
でいます。そして下の方には残業時間の合
計を、30分以上切上げ30分未満切捨てで
表示させようとC9セルに
ROUND(SUM(C2:C8)*24,0)と入力した
のですが、1:00とならずに0:00となってし
まいました。
15分15分の組み合わせ以外ではうまく切上
げ切捨てで表示されていたのですが…。

検索した結果、演算誤差によるものという
ことはわかりましたが、どのような数式に
すれば解消できるのかまではいたりません
でした。
解決方法をご存知の方、よろしくお願いし
ます。

補足すみません、C9セルの数式ですが
ROUND(SUM(C2:C8)*24,0)/24でした。
セルの書式設定は[h]:mmです。

閲覧数:
66
回答数:
2
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

was********さん

2017/3/3105:22:13

MROUND関数
ヘルプ等でご確認ください。
=MROUND(SUM(C2:C8),"0:30")

ROUND関数を使うなら、30分=1/48なので次式でしょう?
=ROUND(SUM(C2:C8)*48,0)/48

  • 質問者

    pir********さん

    2017/3/3123:30:19

    ご回答ありがとうございます。

    こちらの説明が不足しておりました。「30分以上切上げ30分未満切捨てし1時間単位で表示する(0:30→1:00,0:29→0:00)」と表示させることが目的でした。
    ご説明いただいた数式を参考に
    「MROUND(SUM(C2:C8),"1:00")」としたところ、求めていた結果が得られました。

    ちなみに他の検索結果を参考にして
    「ROUND(ROUND(SUM(C2:C3)*24,14),0)/24」としたところ、これでも上記と同様の結果が得られました。

    ありがとうございました。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

ベストアンサー以外の回答

1〜1件/1件中

a_h********さん

2017/3/3100:03:25

ROUND(SUM(C2:C8)*24,0)/24
だと
SUM(C2:C8)
SUM(C2:C8)*24
ROUND(SUM(C2:C8)*24,0)
と順に計算していきますよね。
ですが

SUM(C2:C8)=0:30
SUM(C2:C8)*24=12:00
ROUND(SUM(C2:C8)*24,0)=0
となります。
2個目の式の時点で数値にして0.5になります。
結果、式全体では小数点以下を四捨五入すれば、0になるのは当然。

分の計算ですから、24倍だけじゃ無くさらに60倍しなければダメですよ。
24時間で1とされているわけですから、0.5は12時間です。
ですが30分を数値に置き換えると、0.02083333333
これは24倍しただけではダメですよね。
さらに60倍した式にしないと

ROUND(SUM(C2:C8)*24*60,0)/24
または
ROUND(SUM(C2:C8)*1440,0)/24
式が判らなくなることを避けるためには後者よりも前者のままの方が良いと思います。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる