回答が24時間を超える場合、Excelで(実際に)時間を減算するにはどうすればよいですか?


1

私は、1週間で働く残りのFlexi時間を計算するExcelシートを作成しようとしています。

ユーザーは、作業を開始した時間と作業を終了した時間を入力できます。スプレッドシートは、その日の作業時間を計算します。これは(明らかに)単純な式です=C4-B4

ただし、この同じアプローチを使用して1週間の残り作業時間(37〜11、またはより正確には=TIME(37,0,0) - TIME(11,0,0))を計算しようとすると、時間は自動的に24時間に変換されるため、機能しません。したがって、答え26は実際には2になります。

時間の精度を維持しながら、この問題を回避する時間を扱う方法はありますか?

ユーザーが10進数で作業時間(18時間半の場合は18.5時間)を単純に計算できるようなスプレッドシートが作成されていますが、TIME形式で提供できる精度を維持したいと思います。

これを回避する方法はありますか?


3
現在のスプレッドシートはどのようなものですか?私はあなたが持っていると仮定Time In | Time Out | Total TimeしてTotal Timeいる=(C4-B4* 24). With that, can't you just = 37- <合計時間> `?
シンジジャイ

私が言ったように、Total Time単に=C4-B4-なぜそうなるの=(C4-B4)*24でしょうか?
アイリッド14年

以下の回答を参照してください。内部的には、時間は10進数の日として保存されます(1より大きい場合もあります)。24を掛けると、時間に変換されます。
Madball73 14年

回答:


1

10進数に変換する必要がありますが、ユーザーが時間として入力し続けることができます...

=37-D4*24

舞台裏では、時間は小数(1日の一部)なので、24を掛けると時間数が計算されます...

編集:「時間」フォーマットをシミュレートしたい場合は、これを使用できます(これはもはや数値ではないため、下流の計算では使用できません)。

=TRUNC(37-D4*24)&":"&TEXT(ROUND(MOD(37-D4*24,1)*60,2),"00")

A1:A3正確には何ですか?時間は働いているC4-B4(ここC4=TIME(17,0,0)B4ある=TIME(09,0,0), for example. This would give an answer of 08:00(言うことができます、で、D4)私がしようとした場合=37-VALUE(D4)*24、それは動作しません、それが中に29:00の答えを与えるべきであるとき、私の答えとして与え12:00その場合
。– Eilidh

回答は、セルのアドレスまたはレイアウトが提供される前に書かれました。時間は時間ではなく時刻です。セル= 37-VALUE(D4)* 24が何であれ、小数としてフォーマットする必要があります。12:00が29.0に変更されます。ああ、VALUE()は不要です。更新します。
Madball73

これには、精度を失うという問題があります。つまりは37h - 6:08hなるはず30:52h、それが示しただし30:87、ユーザーが混乱しています。回避策のアイデアはありますか?
アイリッド

30.8730時間52分(四捨五入)です。
シンジジャイ

はい。知っている。私はそれが間違っているとは言いませんでした、それは単にユーザーを混乱させるだけです。例えば、結果だった30.25ユーザーはそれがあったと思うかもしれ30h 25m実際にはそれがあるとき30h 15m
Eilidh
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.