首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >条件格式的工作时间不少于今天(),只对大于

条件格式的工作时间不少于今天(),只对大于
EN

Stack Overflow用户
提问于 2019-09-04 23:23:33
回答 2查看 4.5K关注 0票数 1

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

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

代码语言:javascript
运行
复制
=IF(VLOOKUP($A5,Table,@MATCH(D$3,Headings,0))=0,"Not 
Registered",VLOOKUP($A5,Table,@MATCH(D$3,Headings,0)))

条件格式设置为:

cell values >= TODAY() are green cell values < TODAY() are red cell values = "Not Registered" are yellow

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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-09-05 00:27:36

出现这个问题是因为A3是空的。

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

编辑1:如果不适合您,请检查应该是红色的单元格的数据类型。如果这些不是真正的日期(而是文本),那么它们将永远不符合条件。确保所有看起来像日期的单元格都包含日期(而不是文本)。

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

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

一种选择是使用带有类似于=DateValue(A1)的公式的助手列。复制辅助单元格并将其作为值粘贴到原始单元格上,然后格式化为日期。

或者,将零放入任何单元格中,复制该单元格,然后选择所有可能是日期的单元格,然后使用粘贴特殊>勾选"Add“> OK。它将将作为文本存储的日期转换回其内部存储号。然后将单元格格式化为日期。

或者,在Vlookup之后执行转换,方法是将DateValue包装在VLookup公式周围。

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

B1中的“日期”实际上是文本。Vlookup将其返回为文本,但DateValue()则将其转换为日期。如果此选项引发错误,则日期文本与预期日期的区域设置不一致。

票数 0
EN

Stack Overflow用户

发布于 2019-09-05 01:59:29

原因:每当单元格通过小于今天的规则时,计算机就会将其读取为零,因此它将返回true,因为零比今天少。

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57796668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档