我正在制作sheet1的副本到另一个sheet2(相同的文档),并且query()工作正常,直到我要过滤的列是公式单元格(每个有查询,匹配等的LONG) .
我想要做的是过滤Sheet1中的行,其中M列中的事件日期即将到来(有更多的过滤条件,但只是为了简化这是主要问题) .
我不希望日期为空的行,过去(各种日期格式),或者公式给出空字符串“”的结果 .
The formulas i've tried (which gives error) - note i'm just selecting 2 columns for testing:
=查询(sheet1!A3:N,“选择I,M,其中I ='新加坡'和DATEVALUE(M)> TODAY()”,0)
=查询(sheet1!A3:N,“选择I,M,其中I ='新加坡'和M>今天()”,0)
This formula doesn't give error but doesnt show correct data - shows all data except Jan 2017 - August 7 2017:
= FILTER(sheet1!A3:N,sheet1!I3:I =“Singapore”,sheet1!M3:M> TODAY())
This formula gives empty output:
=查询(sheet1!A3:N,“选择I,M,其中I ='新加坡'和M = '22 8月'”,0)
我是google sheet&apps脚本的新手,所以感谢任何人的建议谢谢!
1 回答
Query中没有today() .
这应该在理论上有效,前提是你有任何格式的M中的所有正确日期,无论实际字符串如何,Google表格都会识别(即公式栏显示正确的日期或时间) . 如果没有,您应该手动将所有剩余日期转换为正确的格式 . 要在查询公式中输入的正确日期格式为
date 'yyyy-mm-dd'
. 表单中的日期格式无关紧要(只要Google表单识别出这一点),但实际公式必须仅包含此格式的日期以进行比较 . 例如,要查找2017年8月31日以下的所有日期,您可以使用它来计算Google无法识别的所有日期:N:N = M:M * 1如果在辅助列N中出现错误,则无法识别这些日期 . 即使您没有收到错误,Google表单也可能错误地识别日期 .
EDIT Google表格中的日期语法