TIME UNIT (時刻ではありません) を減算するにはどうすればよいですか? 昨年、私は 48 分 20 秒でマラソンを走りました。今年は 47 分 50 秒でマラソンを走りました。Excel でこれを行う場合、考えられるすべての時間形式 ( を含む) を試しましたが、何も機能しません。 (または - 30 秒)[h]mm:ss
の結果が期待されます。-00:00:30
答え1
Excel では、1 日の小数点を使用して時間を保存します。したがって、3 時間は 0.125 (3/24) として保存されます。時間は日付/時刻値として保存されます。Excel は、1900 年 1 月 1 日午前 12:00 (Excel for Mac では 1904 年 1 月 2 日午前 12:00) から日付のカウントを開始します。0:48:20 という時刻を入力すると、実際には 1900 年 1 月 1 日午前 0:48:20 になります。Excel は日付/時刻の負の値は処理しないため、負の値を減算するとエラーが発生します (セルに "#######" が表示されます)。
もう 1 つの課題は、Excel に 48:20 が 48 時間 20 分ではなく 48 分 20 秒を意味することを理解させることです。これを行うには 2 つの方法があります。
- 時間表記を使用します。48 分 20 秒は次のようになります。
0:48:20
- 次の関数を使用します
TIME
:=TIME(0;48;20)
3 番目に考慮すべきことは、セルの書式設定です。カスタム書式では、[h]:mm:ss または [m]:ss を使用できます。括弧は、Excel に時間数 ([h]) または分数 ([m]) をカウントし、23 時間後または 59 分後にゼロに戻さないことを指示します。したがって、この場合、セルの書式設定が次のようになっていることを確認してください。[m]:ss
簡単に言うと、Excel は負の時間値を処理する方法を知らないため、必要な操作を「すぐに実行できる」方法はありません。
もし、あんたが本当に求めているものを計算したい場合は、A2 から A1 を引く次の (少し複雑な) 式を使用できます。=IF( A2-A1 < 0; "-"; "") & TEXT( ABS(A2-A1); "[m]:ss" )
これは実際には、時間を減算し、それを正の数 ( ABS
) に変換し、文字列 ( TEXT
) としてフォーマットし、負の場合はその前に "-" を付けます。結果はテキストであり、数値 (値) ではないことに注意してください。
Microsoftには2つの記事があります。1つは日付と時刻の値を保存する(記事の半分くらいまでスクロールしてください)時間の加算と減算。
答え2
エクセルできる負の時刻を処理します......ただし、Excel のデフォルトの 1900 日付システムではなく、「1904 日付システム」を使用する場合のみです
特定のワークブックに設定するには、次の手順を実行します。
ファイル > オプション > 詳細設定 > 「このブックを計算するとき」セクション (下部) までスクロールし、「1904 日付システム」のボックスにチェックを入れます。
望ましくない影響が出る場合もあります。すでに日付が設定されているワークブックでは、1904 日付システムに切り替えないでください。基準日が 1904 年で1/1/1904
はなく、1/0/1900
日付が 4 年と 1 日 (1462 日) 変わるためです。
スクリーンショットを参照してください:
答え3
これは動作します。時間関数は 24 時間を受け入れることができませんが、23 時間で騙して、後で修正します...
=IF(A1<B1,TIME(23,0,0)-A1+B1+TIME(1,0,0),B1-A1)