【问题标题】:Conditional Formatting Dates whereby specific date range auto-suggests action特定日期范围自动建议操作的条件格式日期
【发布时间】:2020-05-25 11:30:03
【问题描述】:

我正在创建文档跟踪器,但正在努力执行以下操作:

  1. 添加条件格式,以便背景根据自上次查看/更新文档以来的天数更改颜色(绿色、黄色、红色)。这样背景颜色会根据天数或月数而变化,以较容易者为准。
  2. 根据日期,在“操作”列中,对于任何大于 3 个月/90 天的日期,希望它自动指示检查,同样对于一个月内或更短的日期不需要检查

链接到文档跟踪器谷歌表:https://docs.google.com/spreadsheets/d/1DTyEg7JQcrTqCFQqgxrJEadOG8PcnI5khOrpOssZvyo/edit?usp=sharing

我得到状态想法的文档示例:https://docs.google.com/spreadsheets/d/1s8CXs-Q4qs7KeykxAlBF2cGfw7th-DGIqle6yLAVOxE/edit?usp=sharing 提前致谢!将非常感谢任何帮助、指导和建议!

【问题讨论】:

  • 您需要提供更多详细信息,如果您将工作表设为可供所有人编辑,则更容易为您提供帮助。它只是您想要以颜色格式化的日期字段吗?如果超过 90 天它是红色的,如果超过 30 天是黄色的,等等?
  • 刚刚使它可编辑,现在只是日期字段,但是很想知道如何将其扩展到经过的天数字段,我还注意到可能使用了错误的函数 =DAYS360。意义的颜色分配也是正确的
  • 请澄清“将其扩展到经过的天数字段”是什么意思。您是否只想将彩色背景添加到“经过的天数”字段中?我已经在您的样本表中的选项卡 GK-Sheet1 中完成了该操作。如果有帮助,我还使用了一个公式来计算“经过的天数”列。

标签: google-sheets google-sheets-formula


【解决方案1】:

根据您目前提供的内容,以下是帮助您入门的基本条件格式。 https://docs.google.com/spreadsheets/d/1_AvM9sPlxUSlToqWf7t6oSKak5K7ALc_S4XjgO5o4q0/edit?usp=sharing

条件格式的自定义公式如下所示:

=AND(TODAY()-E2 > 90, E2 <> "")

因此,如果 E2 中的日期早于 90 天,请将该单元格标记为红色。此规则适用于整个列,E2:E。

同样,通过 F1 中的公式,90 天之前的日期的操作列中会添加一个复选标记。您是否还表示应始终不选中小于 30 天的日期,但应保留 90 到 30 天之间的日期,无论是否选中?

如果这是您所希望的,请告诉我们。

更新:Action 列是根据今天的日期与 E 列中的日期值之间的差异计算的。它实际上是重复了 RED 突出显示,所以并没有真正帮助您。如果它是您希望能够更新的字段,您可能需要将 Arrayformula 更改为下拉公式,如果在单元格中打勾,则可以改写该公式。

【讨论】:

  • @kirkg12 感谢您的解释并花时间提供帮助!我的意思是您所说的日期小于 30 天的日期应该始终不被选中,但 90 到 30 天之间的日期应该保持原样,无论是否选中?但是有点困惑: =and(today()-E2 > 15,E2"") Yellow =and(today()-E2 "") green =and(today()-E2 > 100,E2"") red 为什么在 3 个月内使用数字 15,16,100 而不是使用 90 之类的数字?
  • 我更改了条件格式中的数字。您没有指定原始问题中的颜色使用的日期范围。如果这是您想要的,或者仍然存在问题,请告诉我。
  • 嗨@kirkg12 感谢您的帮助,但创建了一个更改的版本。我正在尝试将“操作”列复制到文档的此更改版本中:docs.google.com/spreadsheets/d/…。目前需要一些关于公式的指导,因为我收到消息数组结果未扩展,因为它会覆盖 I3 中的数据。
  • @Ajiri,错误消息的原因是 I3:I 中的“插入”复选框阻止了 ArrayFormula 在该列中创建值。相反,选择 I3:I,并应用数据验证(从数据菜单),条件 = 复选框。这会将 ArrayFormula 中的 TRUE 或 FALSE 值显示为复选框。我还更改了 I2 中的公式以检查 H3:H 中的日期。它一直指向 F3:F。让我知道这是否是您想要的,或者您是否需要更多格式帮助。请注意,复选框具有误导性 - 您不能单击它们来更改值。
  • I3:I 中的复选框只是向您显示 H3:H 中日期值的条件格式已经显示的信息 - 如果超过 120 天,则为红色,如果等于今天,则为绿色,等等。 .
【解决方案2】:

好的,这不是一个非常优雅的解决方案,我知道一些专家会有更好的解决方案,但我认为它可以满足您的需求。
在您的新工作表中查看我的标签“Iteration 2-GK”。

您可以更改 I 列中的日期,以查看摘要颜色是否按照您的预期改变。我还没有做过技术或利益相关者,但它们是一样的。

我想出了一个复杂的公式来应用与列 I 的条件格式规则中使用的相同逻辑,以应用列 C 的条件格式。请注意,我添加了一个隐藏列 B,以将 ProductName 添加到每一行。我还删除了 A-E 列中的合并单元格。 检查 I 列中的日期是否在某个范围内,然后计算哪个范围出现频率最高(即每个产品的 I 列中最频繁的颜色)的公式是:

=iferror(choose( 
   match(
   max( 
    {iferror(query({B$3:B,I$3:I},
            "select count(Col2) where Col1 = '"& B3 & "' and Col2 < date '"&TEXT(today()-180,"yyyy-mm-dd")&"' label count(Col2) '' ",0),""), 
     iferror(query({B$3:B,I$3:I},
            "select count(Col2) where Col1 = '"& B3 & "' and Col2 < date '"&TEXT(today()-31,"yyyy-mm-dd")&"' and Col2 >= date '"&TEXT(today()-180,"yyyy-mm-dd")&"' label count(Col2) ''",0), ""), 
     iferror(query({B$3:B,I$3:I},
            "select count(Col2) where Col1 = '"& B3 & "' and Col2 < date '"&TEXT(today() ,"yyyy-mm-dd")&"' and Col2 >= date '"&TEXT(today()-31, "yyyy-mm-dd")&"' label count(Col2) ''",0), "")}), 
    {iferror(query({B$3:B,I$3:I},
            "select count(Col2) where Col1 = '"& B3 & "' and Col2 < date '"&TEXT(today()-180,"yyyy-mm-dd")&"' label count(Col2) '' ",0),""), 
     iferror(query({B$3:B,I$3:I},
            "select count(Col2) where Col1 = '"& B3 & "' and Col2 < date '"&TEXT(today()-31,"yyyy-mm-dd")&"' and Col2 >= date '"&TEXT(today()-180,"yyyy-mm-dd")&"' label count(Col2) ''",0), ""), 
     iferror(query({B$3:B,I$3:I},
            "select count(Col2) where Col1 = '"& B3 & "' and Col2 < date '"&TEXT(today() ,"yyyy-mm-dd")&"' and Col2 >= date '"&TEXT(today()-31, "yyyy-mm-dd")&"' label count(Col2) ''",0), "")}, 
  0),"red","yellow","green"),"")

我还没有让这个工作,所以它需要从单元格 C3 向下拖动列 C。

如果您提供更多文档,您是否需要为产品添加行?我还没有测试这在添加行时是否有效。

【讨论】:

    猜你喜欢
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 2018-07-13
    • 1970-01-01
    • 1970-01-01
    • 2016-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多