使用间接函数引用查询功能的串联导入范围

时间:2018-12-18 07:23:14

标签: google-sheets google-sheets-query importrange

以下是我的查询功能的原始形式: =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已经使用。做错什么了吗?

我提供了一些图片以供进一步说明。

原始公式: enter image description here

缩短尝试: enter image description here

工作表名称中的单元格值:JOIN单元格:J3: enter image description here

J3中的单元格值实际上是从单元格A1中粘贴的值: enter image description here

1 个答案:

答案 0 :(得分:0)

如果我的理解正确,因为您的公式现在是指工作表中的特定范围而不是范围数组,因此您将需要使用AB而不是{{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")

enter image description here