ArrayFormula +多个Importrange +查询

时间:2018-02-09 15:21:15

标签: google-sheets

我想将一些电子表格导入一个带有一些条件的电子表格,不幸的是,如果其中一个电子表格没有返回任何数据,则 Error in grouped_df_impl(data, unname(vars), drop) : Column `i` is unknown 会要求ARRAYFORMULA而不是空结果。

我需要在ARRAY_LITERAL函数中使用什么,以便IFERROR不附加任何内容并且很高兴继续使用?

这就是我现在所拥有的:

ARRAYFORMULA

我在={ QUERY(IMPORTRANGE("<spreadsheet>", "Range!B2:J"), "SELECT Col1, Col2, Col3, Col5, Col9 WHERE Col1 <> '' AND Col5 >= 18 "); IFERROR(QUERY(IMPORTRANGE("<spreadsheet2>", "Range!B2:K"), "SELECT Col1, Col3, Col2, Col4, Col6, Col10 WHERE Col10 <> '' AND Col6 >= 18"), "") } 中包装了第二个,但空字符串不是有效的IFERROR,那么我该怎么办呢?

完整错误:

ARRAY_LITERAL

- 修改

我意识到我可以给它一个空行,其列数与In ARRAY_LITERAL, an Array Literal was missing values for one or more rows. 相同,但您永远不知道是否需要使用这些列,然后查询需要更改..

1 个答案:

答案 0 :(得分:1)

我建议使用空的array

=iferror(query(..., ...), {"", "", "", ..., ""} )

注意:

  • 您选择6列,因此重复“”六次。

修改

来自@Moseleyi。

  

有道理,但当然,它仍会产生空行,如果我   将我的ARRAYFORMULA包装在SORT中,将首先显示空行,但是   当我使用空单元格时,它们不会,可能是因为它们实际上是   空值。但我用IFERROR(1/0)替换了空字符串并且它有效。