Google表格中Query函数与条件语句的结合使用问题
Google Sheets QUERY函数条件修改方案
直接把P < B5的条件改成动态判断逻辑即可,当B3不等于"446"时生效,等于时跳过。修改后的完整函数如下:
=IFERROR(QUERY(BDD!A1:T2972; "SELECT A,R,B,C,D,E,S,I,T,P,J,K,L WHERE A IS NOT NULL "&IF(B3<>"446";" AND P < '&"&B5&"'";"")&" AND 1=1 "&IF(B2="XXXX";"";" AND LOWER(J) = LOWER('"&B2&"') ")&IF(B3="0c";"";" AND LOWER(S) = LOWER('"&B3&"') AND NOT(LOWER(J)='PERM' AND T='"&B3&"') AND I = 'ADMI' ORDER BY A , P") ;0);"PAS DE RÉSULTAT")
关键改动说明:
- 把原函数中固定的
AND P < '&"'&B5&'"'替换成了&IF(B3<>"446";" AND P < '&"&B5&"'";"")& - 这个IF判断的逻辑是:如果B3的值不是"446",就拼接上
AND P < '&"&B5&"'这个条件;如果是"446",就返回空文本,相当于不添加这个条件 - 保留了原函数的其他所有逻辑,只针对
P < B5的条件做了动态控制
内容的提问来源于stack exchange,提问作者Mous
相关产品推荐
相关产品推荐

