2016-07-19 10 views
1

私は自分の勤務時間を書き留めるGoogleスプレッドシートを持っています。たとえば、次のレコードがあります。Googleスプレッドシート - 数式に負の時間が表示されない

G9 | 05:05

H9 | 06:30

今、時間が残っているかどうかを計算します。最初の試み:

=IF(G9>0;G9-H9;0) 

2回目の試行:

=IF(G9>0;IF(G9<H9;G9-H9;H9-G9);0) 

は、残念ながら両方が22:35のような時間で終わります。 0以下の計算では、システムが24:00で始まると思うようになるため、

正の時間(1:05など)の値を-1:25、またはその逆のような値を動的に式で表示するにはどうすればよいですか?

フィールドの書式を変更しようとしましたが、正の値であっても常に負の値として表示されるため、フィールドの書式を変更しようとしました。

EDIT:

情報としては、誰かがテキスト値で動作するように悩みを持っている場合。言及した@wordsのように、値を変換する必要があります。あなたは配列で動作するようにしたい場合しかし、あなたはまた、機能を必要とする:

=SUM(ARRAYFORMULA(VALUE(I2:I32))) 

答えて

1

一つはtextで文字列に時間を変換し、先頭に追加することができます「 - 」それを必要なとき:

=if(G9>=H9, text(G9-H9, "H:mm"), "-" & text(H9-G9, "H:mm")) 

結果後の計算で必要な場合は、valueで元の値を復元することができます。

+0

あなたの数式に感謝しますが、私はそれを動作させるためにいくつかの修正を加えなければなりませんでした。 (H9-G9; "H:mm")) 'セミコロンがなければ、解析中にエラーが発生しました。しかし、今はうまくいっています。私を助けてくれました。ありがとうございました – user3772108

+1

区切り記号は、ユーザーのロケールによって決まります。いくつかの国ではコンマで、セミコロンでは他の国です。一般的に、ユーザーは投稿を読んで使用することを誰にも知らせることがないため、何らかの構文を使って式を投稿します。 –

+0

私は理解しています。説明ありがとう。 – user3772108

関連する問題