Google Sheets的查询+IFS函数

Google Sheets' query + IFS function

我想同时使用 IFS 和 google sheet 中的查询。

效果很好

=QUERY('PN Orders'!A1:AF,"SELECT C, D where C LIKE '%" & $B& "%' and D LIKE '%" & $B& "%' LIMIT " &$B,1)

以上查询运行良好,得到结果。 但是每次我将它与 IFS 函数结合使用时,它 returns 什么都没有。

不起作用

=ifs( and($B<>"",$B<>"")=true, QUERY('PN Orders'!A1:AF,"SELECT C, D where C LIKE '%" & $B& "%' and D LIKE '%" & $B& "%' LIMIT " &$B,1))

我在这里遗漏了什么吗?
为什么在与 IFS 函数结合使用时查询 returns 什么都没有?

第二个公式的主要问题是,当两个参数应该属于同一类型时,将标量比较(单个值)与值数组混合在一起。

IFS 是 "array kind of type" 公式。您在场景中需要的是简单的 IF 语句:

=IF((B1<>"")*(B2<>""),
 QUERY('PN Orders'!A1:AF, 
 "select C,D 
  where C like '%"&B1&"%' 
    and D like '%"&B2&"%' 
  limit "&B3, 1), "enter name and phone")


或者像这样:

=IF((B1<>"")+(B2<>""), 
 QUERY('PN Orders'!A1:AF, 
 "select C,D 
  where C like '%"&B1&"%' 
    and D like '%"&B2&"%' 
  limit "&B3, 1),  "enter name or phone")