Excel 条件格式不适用于小于今天()的情况,仅适用于大于

Excel 条件格式不适用于小于今天()的情况,仅适用于大于,excel,conditional-formatting,Excel,Conditional Formatting,条件格式不适用于小于今天()的日期,仅适用于大于今天() 我有一个IF语句,里面有两个VLOOKUPS。如果单元格为空,其中一个输出“未注册”。另一个,只需复制另一个电子表格上的数据 =IF(VLOOKUP($A5,Table,@MATCH(D$3,Headings,0))=0,"Not Registered",VLOOKUP($A5,Table,@MATCH(D$3,Headings,0))) 条件格式设置为: 单元格值>=TODAY()为绿色 单元格值勾选”添加“>确定。将以文本形式存储

条件格式不适用于小于今天()的日期,仅适用于大于今天()

我有一个IF语句,里面有两个VLOOKUPS。如果单元格为空,其中一个输出“未注册”。另一个,只需复制另一个电子表格上的数据

=IF(VLOOKUP($A5,Table,@MATCH(D$3,Headings,0))=0,"Not 
Registered",VLOOKUP($A5,Table,@MATCH(D$3,Headings,0)))
条件格式设置为:

单元格值>=TODAY()为绿色
单元格值

我怀疑条件格式没有正确读取日期。每个日期单元格的格式都是长日期


问题出现是因为A3是空的

将规则更改为使用
=Today()
或用所需日期填充A3

编辑1:如果这不适用于您,请检查应为红色的单元格的数据类型。如果这些不是真实的日期(而是文本),那么它们永远不会满足条件。确保所有看起来像日期的单元格实际上都包含日期(而不是文本)

如果查找表将日期存储为文本,那么您可以在那里进行更改,因为Vlookup将返回相同的数据类型

编辑2:选择单元格并更改其格式将不会将文本转换为日期。您可以通过将日期的格式更改为“常规”,来测试日期是否真的是日期。如果这导致单元格显示一个数字,那么这是一个真实的日期。但是,如果单元格外观没有更改,则值为文本,需要采用不同的方法

一个选项是使用带有公式的helper列,如
=DateValue(A1)
。复制辅助单元格并将其作为值粘贴到原始单元格上,然后设置为日期格式

或者,在任何单元格中输入零,复制该单元格,然后选择所有可能是日期或可能不是日期的单元格,并使用“特殊粘贴>勾选”添加“>确定。将以文本形式存储的日期转换回其内部存储编号。然后将单元格格式化为日期

或者,在Vlookup公式周围包装一个DateValue,在Vlookup之后进行转换

=DATEVALUE(VLOOKUP(“a”,A1:B1,2,0))


B1中的“日期”实际上是文本。Vlookup将其作为文本返回,但DateValue()随后将其转换为日期。如果这一个抛出一个错误,那么日期文本与您的区域设置不一致,即日期应该是什么样子

问题出现是因为A3是空的

将规则更改为使用
=Today()
或用所需日期填充A3

编辑1:如果这不适用于您,请检查应为红色的单元格的数据类型。如果这些不是真实的日期(而是文本),那么它们永远不会满足条件。确保所有看起来像日期的单元格实际上都包含日期(而不是文本)

如果查找表将日期存储为文本,那么您可以在那里进行更改,因为Vlookup将返回相同的数据类型

编辑2:选择单元格并更改其格式将不会将文本转换为日期。您可以通过将日期的格式更改为“常规”,来测试日期是否真的是日期。如果这导致单元格显示一个数字,那么这是一个真实的日期。但是,如果单元格外观没有更改,则值为文本,需要采用不同的方法

一个选项是使用带有公式的helper列,如
=DateValue(A1)
。复制辅助单元格并将其作为值粘贴到原始单元格上,然后设置为日期格式

或者,在任何单元格中输入零,复制该单元格,然后选择所有可能是日期或可能不是日期的单元格,并使用“特殊粘贴>勾选”添加“>确定。将以文本形式存储的日期转换回其内部存储编号。然后将单元格格式化为日期

或者,在Vlookup公式周围包装一个DateValue,在Vlookup之后进行转换

=DATEVALUE(VLOOKUP(“a”,A1:B1,2,0))

B1中的“日期”实际上是文本。Vlookup将其作为文本返回,但DateValue()随后将其转换为日期。如果这一个抛出一个错误,那么日期文本与您的区域设置不一致,即日期应该是什么样子

原因: 每当单元格通过小于今天的规则时,计算机将读取为零,因此它将返回真值,因为零小于今天

解决方案: 在条件格式规则管理器上,尝试为未注册的规则启用如果为真则停止

原因: 每当单元格通过小于今天的规则时,计算机将读取为零,因此它将返回真值,因为零小于今天

解决方案:
在条件格式规则管理器上,尝试为未注册的规则启用如果为真则停止

尝试检查CF对话框中的“如果为真则停止”选项。A3中到底是什么?应该是=今天()而不是A3。。。我在A3单元中设置了一个=today()来检查它是否有效。我玩过stop if true但没有成功所以J13单元应该是红色的,对吗?在空单元格中,try
=J13返回false,这意味着单元格J13不是正确的日期。如果是,它将返回真。检查数据类型。尝试检查CF对话框中的“如果为真则停止”选项。A3中到底是什么?应该是=今天()而不是A3。。。我在A3单元中设置了一个=today()来检查它是否有效。我玩过stop if true但没有成功所以J13单元应该是红色的,对吗?在空单元格中,try
=J13返回false,这意味着单元格J13不是正确的日期。如果是,它将返回真。检查数据类型。我在回答中添加了一个建议。感谢您的建议,我选择了“表”(在AAMC培训电子表格中),该表包含日期、ID、姓氏和姓氏