以下是我的查询功能的原始形式:
=ArrayFormula(query({importrange("1yqTUmJcL6YxgOpfHS5Pt9nYnmpiqN3tUPQP7-Rp8xis","CPG!A2:L20");importrange("1yqTUmJcL6YxgOpfHS5Pt9nYnmpiqN3tUPQP7-Rp8xis","PUB!A2:L20")},"Select Col5, Sum (Col4) where Col6='' group by Col5 pivot Col7"))
我试图通过以下尝试使用间接引用串联的导入范围来缩短公式
=ArrayFormula(query(indirect("JOIN!J3"),"Select Col5, Sum (Col4) where Col6='' group by Col5 pivot Col7"))
但出现此错误:
Error
Unable to parse query string for
Function QUERY parameter 2:
NO COLUMN: Col5
Join!J3单元格包含以下值:
{importrange("1yqTUmJcL6YxgOpfHS5Pt9nYnmpiqN3tUPQP7-Rp8xis","CPG!A2:L20");importrange("1yqTUmJcL6YxgOpfHS5Pt9nYnmpiqN3tUPQP7-Rp8xis","PUB!A2:L20")}
我在论坛上研究了各种类似的问题,但是他们的答案却无法解决。通常是使用“ Select Col1”而不是“ Select A”,但是我的公式都已经使用Col1,而Col2已经使用。做错什么了吗?
我提供了一些图片以供进一步说明。
答案 0 :(得分:0)
如果我的理解正确,因为您的公式现在是指工作表中的特定范围而不是范围数组,因此您将需要使用A
,B
而不是{{1} },Col1
等
我假设工作表 JOIN 中由单元格Col2
生成的数据显示在J3
中的数据(基于范围J3:U21
)。您需要查询所有这些信息,而不仅仅是查询包含公式的单元格。
尝试以下公式。 (我已经假设数据位于哪一列中,请在必要时进行修改)。
A2:J20
编辑:您似乎使用了相同的范围和ID。您可以仅使用两个单元格来引用它们。
=ArrayFormula(query(indirect("JOIN!J3:U21"),"Select N, Sum (M) where O='' group by N pivot P")