基于多个条件和今天的

时间:2016-08-11 21:10:13

标签: excel-formula multiple-columns conditional-formatting

我有一个包含多列的大型客户列表。感兴趣的专栏:

栏目E - 档案状态/需要,
列H - 下一个约会日期。

如果E列读取"已执行"我需要一个公式来更改行的格式或者"签署"只有当H栏还读取今天日期之前的日期时。

例如今天是2016年8月11日,joe schmoes文件是"签署" (E栏)和下一个约会日期是" 2016年8月9日" (H栏中的过去日期)。

我需要突出显示行,以便我们可以看到此文件需要注意。

我尝试了很多不同的公式,但我没有得到任何完全正确的工作。我最接近的公式如下:

=IF(AND(TODAY()-$H1>=0,TODAY()-$H1<=15),SEARCH($E1="signed",$E1="executed"))

问题是如果E列中的单元格读取&#34;签名&#34;就像我需要它格式化不适用 - 格式仅适用于列E返回错误值并且单词signedexecuted不在该行的E单元格中。

我知道第一部分也不是绝对正确的,因为它只是在今天和过去15天之间搜索H列中的值。 (我无法弄清楚如何将公式编写为过去的任何日期)。

我尝试过的另一个有效的是:

=IF(AND(TODAY()-$H1>=90,TODAY()-$H1<=365),SEARCH($E1="signed",$E1="executed"))

显然,这仅适用于今天90天到365天之间的H栏中的值,但如果列E读取输入的两个搜索中的任何一个,我的格式不适用。 / p>

我还想过做出否定规则,基本上写一条规则,即H列中的任何过去日期都有&#34;签署的#34;或&#34;已执行&#34;在E栏中将返回某种格式但尚未尝试任何公式。

如果您所拥有的公式与我所拥有的公式完全不同,但实现了目标,那么我只需要这样做,并且我花费大量时间使用研究,试错法。

1 个答案:

答案 0 :(得分:0)

选择整张表格和HOME&gt;样式 - 条件格式,新规则...,使用公式确定要格式化的单元格格式化此公式的值:

=AND(IFERROR(SEARCH("executed",$E1)>0,SEARCH("signed",$E1)>0),$H1<TODAY())

格式... ,选择您选择的颜色填充(突出显示),确定确定

这假定(除其他外!):

  • executedsigned可能只是单元格内容的一部分 一起发生,无论如何都应触发CF.
  • 如果next appointment date实际上是今天,则不​​填写。
  • 日期不是文字格式。
  • 您的Excel版本有IFERROR。

=AND处理触发器中涉及不同列的要求。

单独地,这些由长元素覆盖,对于短元素,=TODAY函数小于(<operator,如果列H中的日期值是任何小于当前日期的日期,或根本没有日期值。

较长的元素是一对=SEARCH函数,分别用于executedsigned,因此任何一个(或两个)都会对CF触发器有所贡献。由于数据可能不需要区分大小写,因此SEARCH优先于=FIND

SEARCH返回找到搜索词的位置索引,如果找不到则返回错误。由于出于这些目的,单元格中的 无关紧要,任何数字结果都会起作用,>0涵盖所有这些可能性。 =IFERROR用于捕获由于缺少executed而导致的错误,以允许在该情况下搜索signed(否则公式的整体结果将是错误,CF不被触发)。