我的表格中有这个公式:
=query('Character Analysis'!$H62:$L83,"select H,I,J,K,L where H is not null order by L DESC",0)
只有前两个源行包含数据,但在带有查询公式的工作表上,它似乎是拉动范围内的所有行,即使是空行。如果我在查询公式表的第3行输入内容,它会给我一个错误说"数组结果未展开,因为它会覆盖________中的数据。"但它并不需要那个房间,因为查询结果中只有两行数据。
我尝试添加"不是null"语言,希望它将返回的结果限制为仅填充的单元格,但它不起作用。
如何告诉我的查询只从源范围内的已填充单元格中提取数据?
答案 0 :(得分:0)
我想出了一个解决方法,至少在某种程度上它对我有用。这不是一个真正的答案,因为我仍然想知道为什么"不是空的"语言不起作用,但这正是我所需要的:你可以通过计算将返回的行数限制为包含数据的源行数:
=query('Character Analysis'!$H62:$L83,"select H,I,J,K,L order by L DESC limit "&COUNT('Character Analysis'!$L62:$L83)&"",0)
答案 1 :(得分:0)
根据source
你可以:
使用'where'子句消除空白行
如果使用整列定义命名范围(即包括空白行),您可能会发现这些空白出现在查询结果中(根据排序顺序,它可能位于顶部!)。要阻止这些出现,请使用此语法包含where子句(假设列A):
"...where A <> ' ' " (for text fields)
"...where A <>0" (for numeric fields)
这意味着'列a中的值不是零长度文本。