如何在Google Sheets的QUERY()公式中引用单元格设置日期条件?
替换Google Sheets QUERY公式中的日期为单元格引用的方法
原公式如下:=QUERY('Task Data'!A:M,"select C, D, E, F, H, B, L, M where D < todate(now()) and G matches false")
要把公式里的todate(now())换成单元格引用作为筛选日期,得注意QUERY的日期语法要求,具体操作如下:
- 先确定你要用来作为筛选条件的单元格,比如K1(换成你实际使用的单元格即可)。
- QUERY的SQL语法中,日期常量必须写成
date'yyyy-mm-dd'的格式,所以需要用TEXT函数把单元格内的日期转换成该格式,再通过字符串拼接的方式嵌入到查询语句中。 - 替换后的完整公式:
=QUERY('Task Data'!A:M,"select C, D, E, F, H, B, L, M where D < date '"&TEXT(K1,"yyyy-MM-dd")&"' and G matches false")
简单解释:
直接把单元格引用塞进QUERY的字符串里会导致识别错误,用TEXT(K1,"yyyy-MM-dd")把单元格日期转成标准的yyyy-MM-dd格式,再用&符号把这个格式后的日期和QUERY的查询语句拼接起来,就能让QUERY正确识别你指定的筛选日期了。
内容的提问来源于stack exchange,提问作者onit
相关产品推荐
相关产品推荐

