Google Sheets筛选昨日推文公式失效问题排查求助
问题原因及解决办法
- 公式逻辑不完整:你当前的公式
=FILTER(Worksheet1!A1:B; Worksheet1!B1:B>TODAY()-1)仅筛选了「日期晚于昨天00:00:00」的内容,这会包含今天发布的所有推文,甚至测试用的未来日期数据,自然会返回全部内容。要精准筛选昨日全天的推文,必须同时限定日期上限——小于今天00:00:00。 - 日期列可能为文本格式:如果B列的
YYYY-MM-DD hh:mm:ss只是文本样式,而非Google Sheets可识别的日期时间数值,系统无法正确进行大小比较,会默认所有文本都满足大于TODAY()-1的条件,导致返回全部数据。
正确公式写法
情况1:B列是有效日期时间格式
使用同时限定上下限的FILTER公式:
=FILTER(Worksheet1!A1:B; Worksheet1!B1:B >= TODAY()-1; Worksheet1!B1:B < TODAY())
情况2:B列是文本格式日期
先将文本转换为可识别的日期时间值再筛选,公式如下:
=FILTER(Worksheet1!A1:B; DATEVALUE(LEFT(Worksheet1!B1:B;10)) + TIMEVALUE(RIGHT(Worksheet1!B1:B;8)) >= TODAY()-1; DATEVALUE(LEFT(Worksheet1!B1:B;10)) + TIMEVALUE(RIGHT(Worksheet1!B1:B;8)) < TODAY())
或者先批量转换B列格式:选中B列 → 顶部菜单「格式」→「数字」→「日期时间」,选择对应格式后,再使用情况1的公式即可。
内容的提问来源于stack exchange,提问作者SandraLie
相关产品推荐
相关产品推荐

