Google Sheets QUERY函数新增第三级优先级筛选条件不生效问题咨询
问题定位
你新增的筛选段存在两处错误,和IF嵌套逻辑无关:
- 缺少指定匹配列:
AND = ('"&I10&"')语句中没有声明要匹配「Priority Level」对应的表列,QUERY无法识别判断对象 - 数值类型格式错误:数值类的匹配值不需要用单引号包裹,你当前加的单引号会将I10的取值识别为文本,和数值类型的列无法匹配,导致筛选失效
修复步骤
- 先确认你的表格里「Priority Level」对应的列字母,比如存储该字段的是E列就写E,是F列就写F,下文以F列为例,你自行替换为实际列即可
- 把你新增的代码段替换为如下内容:
&IF(I10="Priority Level", "", " AND F = "&I10&"")
修正后完整公式(以Priority列是F列为例)
=QUERY('BDDB '!$A$2:$AA,"SELECT * WHERE 1=1 "&IF(E10="All Departments", "", " AND LOWER(B) = LOWER('"&E10&"')")&IF(G10="Hiring Manager", "", " AND LOWER(D) = LOWER('"&G10&"')")&IF(I10="Priority Level", "", " AND F = "&I10&""),1)
可选优化
如果存在I10下拉取值被识别为文本的情况,可以将匹配段改为AND F = "&VALUE(I10)&",强制将I10的取值转换为数值,避免类型不匹配问题。
内容的提问来源于stack exchange,提问作者hdjones
相关产品推荐
相关产品推荐

