2016-11-16 37 views
0

我試圖創建一個電子表格,其中一個單元格將根據從記錄時間粘貼的時間變成綠色,然後是黃色而不是紅色。我用的是:時間條件格式

=HOUR(MOD(NOW(),1)-C2)<2 as Green 

=HOUR(MOD(NOW(),1)-D1)<4 as Yellow 

=HOUR(MOD(NOW(),1)-D1)>=4 as Red 

但是每一件事情會紅,我使用條件格式和單元格的格式爲HH:MM AM/PM

+0

爲什麼你有MOD ()?小時返回一個數字,不知道C2或D1是什麼,所以很難說出什麼錯誤 – Andreas

+0

D1是單元格,我改變了表單中的另外兩個單元以便在這裏改變它,但所有都在看D1 「開始時間」並且需要根據經過的時間量來改變顏色,如紅色爲「4小時已過」 –

+0

D1是否包含時間?或者是否包含格式化日期/時間以僅顯示時間部分?而且,如果它包含日期/時間,如果它是27個小時,你想使用什麼顏色? (或者D1是否包含看起來像時間的文本字符串) – YowE3K

回答

0

把它分解成塊,以確保您的函數的每個部分充當預期。我不完全確定你的目標是什麼,但是我已經分解了你的每一個例子。使用這些信息,你應該能夠看到輸出不正確的地方並修正邏輯。讓我知道它是否有幫助,但你不在那裏。

你有什麼:

FX:=NOW()

輸出:11/16/2016 15:16

FX:=MOD(NOW(),1)

輸出:1/0/1900 15:16

FX:=HOUR(MOD(NOW(),1))

輸出:15

FX:=HOUR(MOD(NOW(),1)-D1)

輸出:15 - HOUR(D1)(如數字)

15 - HOUR(D1)你想使用你的比較是多少?如果不是的話,你的邏輯就會出錯。如果是這樣,你的條件格式可能有錯誤。

HTH,讓我們知道你想出什麼。

傑克遜

編輯:

  • 在第二個公式線修正=MOD(NOW(),1)
+0

OP正在使用'MOD(NOW(),1)',而不是'MOD(NOW())'。 'MOD(NOW(),1)'將忽略日期/時間的日期部分,只留下時間部分。 – YowE3K

+0

這是一個錯字,我已經糾正它說'= MOD(NOW(),1)'。這就是說,我不熟悉在日期中使用MOD功能。爲什麼不使用'= HOUR(NOW() - D1)'而不是'= HOUR(MOD(NOW(),1)-D1)'?何時(MOD(NOW(),1)'不等於'HOUR(NOW())'?) – Jackson

+1

我幾乎在我離開我的評論的同時注意到您的編輯 - 但我留下了評論指出'MOD(NOW(),1)'只是剝離NOW()的日期部分,主要是因爲你的評論它會返回一個無意義的值。 )',但有些人更喜歡明確地將其轉換爲時間,因爲這就是他們的想法。我也不喜歡在時間範圍內使用'HOUR'(我只是使用時間跨度* 24),但如果您想要排除經過的時間段(即節省MOD 24) – YowE3K

1

我可以複製你的問題的唯一方法是,如果D1包含日期/時間,而不只是一個時間。

假設您在該單元格中有一個日期/時間2016年11月17日6:50 AM(以HH:MM AM/PM格式顯示爲「06:50 AM」)並且現在說它現在是2016年11月17日7:59 AM。

您的計算將嘗試計算0.28472222(1900年1月0日上午6:50的數值)減去42691.33264(2016年11月17日上午7:59的數值)的HOUR。 HOUR(-42691.04792)發出#NUM!錯誤(因爲負值對於日期/時間計算無效),並會在條件格式中給您帶來問題。

如果在細胞D1(即使它被格式化,只是顯示時間部分),然後如果你想27小時經過的時間,你可以用下面的公式的日期/時間顯示爲紅色:

=(NOW()-D1)*24<2 as Green 
=(NOW()-D1)*24<4 as Yellow 
=(NOW()-D1)*24>=4 as Red 

,或者如果你想27小時經過的時間要處理相同的3小時格式化爲黃色使用下列公式:

=HOUR(NOW()-D1)<2 as Green 
=HOUR(NOW()-D1)<4 as Yellow 
=HOUR(NOW()-D1)>=4 as Red 
+0

謝謝你明白了。部門希望該表可以反映出即使24小時過去。 –