web-dev-qa-db-ja.com

Googleスプレッドシートの条件付き書式が一部のセルで機能しない

これはStackExchangeを使用する最初の質問なので、ご容赦ください。トレーニングの期限を追跡するためのスプレッドシートを作成しています。シート1は、表示のみの機能を持つ人々が見ることができる期限を示しています。シート1には、すべての情報を参照するすべての条件付き書式と数式が含まれています。シート2には、トレーニングが最後に行われた日付が表示され、スプレッドシートの編集者のみが表示できます。

クイックランダウン:

  • トレーニングAは2年間有効です。

  • トレーニングB-Eは4月1日から3月31日までのサイクルで行う必要があるため、トレーニングがこれらの日付内にある場合、次の期日は翌年の3月31日になります。

  • トレーニングFは1年間有効です。

  • トレーニングGは、翌年の12月31日まで有効です。

  • H-Jのトレーニングは半年に1回なので、暦年の第1四半期内にいつでも行われた場合、次の期日は第3四半期の最終日になります。第2四半期中にいつでも行われた場合、期日は第4四半期の最終日になります。

  • トレーニングK-Mは1年間有効です。

  • N-Pのトレーニングは2年間有効です。

  • トレーニングQ-Zは1回限りのトレーニングであるため、期限はなく、シート2のセルを参照するだけです。

だから、私が持っている問題は条件付き書式に関するものです。私は元々シート全体に1組の書式を設定していましたが、特定のセルが想定どおりに強調表示されていないことに気付いたとき、条件付き書式を分割しましたグループに。

期待される結果

  • 日付が期限切れから4〜6か月の間の場合は黄色で強調表示

  • 日付が期限切れから2〜4か月の間の場合はオレンジ色で強調表示

  • 日付が期限切れから0〜2か月の間にある場合、赤で強調表示します

  • 日付が期限切れの場合、黒を赤文字で強調表示

  • 日付が今日の場合はシアンを強調表示

実際の結果

  • 列D-GおよびI-Lの強調表示なし

これを防ぐのに何か問題がありますか?必要な結果に別の数式を使用する必要がありますか?

こちらがリンクです: https://docs.google.com/spreadsheets/d/1gMC6vuCfjPuDMHpGw43sRheYxCqi09xGqBqW155gUjA/edit?usp=sharing

1
RAY BISS

D:GおよびI:Lにある数式は返されません有効な日付ですが、テキスト文字列なので、日付の条件付き書式では取得されません。それを修正するには、数式を次のようにラップする必要があります

=TO_DATE(IFERROR(DATEVALUE(_formula_here_)))

列を削除してシートスキルをレベルアップすることもできます[〜#〜] j [〜#〜](範囲:'1'!J5:J)、これをJ5セルに貼り付けます。

=ARRAYFORMULA(TO_DATE(IFERROR(DATEVALUE(IF(LEN('2'!K5:K), 
 IF(('2'!K5:K > DATE(2017,  1, 1)) * ('2'!K5:K < DATE(2017,  3, 31)), "09/30/2017", 
 IF(('2'!K5:K > DATE(2017,  4, 1)) * ('2'!K5:K < DATE(2017,  6, 30)), "12/31/2017", 
 IF(('2'!K5:K > DATE(2017,  7, 1)) * ('2'!K5:K < DATE(2017,  9, 30)), "03/31/2018", 
 IF(('2'!K5:K > DATE(2017, 10, 1)) * ('2'!K5:K < DATE(2017, 12, 31)), "06/30/2018", 
 IF(('2'!K5:K > DATE(2018,  1, 1)) * ('2'!K5:K < DATE(2018,  3, 31)), "09/30/2018", 
 IF(('2'!K5:K > DATE(2018,  4, 1)) * ('2'!K5:K < DATE(2018,  6, 30)), "12/31/2018", 
 IF(('2'!K5:K > DATE(2018,  7, 1)) * ('2'!K5:K < DATE(2018,  9, 30)), "03/31/2019", 
 IF(('2'!K5:K > DATE(2018, 10, 1)) * ('2'!K5:K < DATE(2018, 12, 31)), "06/30/2019", 
 IF(('2'!K5:K > DATE(2019,  1, 1)) * ('2'!K5:K < DATE(2019,  3, 31)), "09/30/2019", 
 IF(('2'!K5:K > DATE(2019,  4, 1)) * ('2'!K5:K < DATE(2019,  6, 30)), "12/31/2019", 
 IF(('2'!K5:K > DATE(2019,  7, 1)) * ('2'!K5:K < DATE(2019,  9, 30)), "03/31/2020", 
 IF(('2'!K5:K > DATE(2019, 10, 1)) * ('2'!K5:K < DATE(2019, 12, 31)), "06/30/2020", 
 IF(('2'!K5:K > DATE(2020,  1, 1)) * ('2'!K5:K < DATE(2020,  3, 31)), "09/30/2020", 
 IF(('2'!K5:K > DATE(2020,  4, 1)) * ('2'!K5:K < DATE(2020,  6, 30)), "12/31/2020", 
 IF(('2'!K5:K > DATE(2020,  7, 1)) * ('2'!K5:K < DATE(2020,  9, 30)), "03/31/2021", 
 IF(('2'!K5:K > DATE(2020, 10, 1)) * ('2'!K5:K < DATE(2020, 12, 31)), "06/30/2021",
 )))))))))))))))), )))))

0

0
user0