我正在从两个不同的Google工作表导入数据,并将它们合并到另一个工作表中。我使用的公式如下。
=QUERY({
IFERROR(QUERY(
{ IMPORTRANGE("" , "Sheet1!$A$1:$b") },
"SELECT Col1,Col2 WHERE Col2='Total'",
0
)) ;
IFERROR(QUERY(
{ IMPORTRANGE("" , "Sheet1!$a$1:$b") },
"SELECT Col1,Col2 WHERE Col2='Yes'",
0
))
})
在上面的公式中,importrange是在两个工作表都有数据要导入,但如果其中一个工作表没有数据要导入时给出的结果,另一个工作表的数据不会被导入。我已经在下面的链接中想出了一个解决方案,我们可以通过使用虚拟列引用来处理这个问题,当我们有几个要导入的工作表和几个列时,这种方法很好,但是当我们从多个工作表和多个列导入时,导入虚拟列引用会变得太长。有没有别的办法来解决这个问题。
发布于 2021-04-17 14:16:42
最简单的方法是使用IFERROR(/0(1,n)SEQUENCE(1,n)SEQUENCE(1,n)SEQUENCE)作为输入查询失败时的输出,而不需要列出一堆空格。
简单示例的解决方案如下所示,其中n= 2:
=ARRAYFORMULA(QUERY({IFERROR(QUERY({IMPORTRANGE("1hea986JF3plR_tn7plNRgjWhiGqxOlR8s8yE-Ri6FfU" , "Sheet1!$A$1:$b")}, "SELECT Col1,Col2 WHERE Col2='Total'",0),IFERROR(SEQUENCE(1,2)/0));IFERROR(QUERY({IMPORTRANGE("1IbPpoLLfa-ukoz2WInlgNGSNMNBxBwSx4in52fZCEyE" , "Sheet1!$a$1:$b")},"SELECT Col1,Col2 WHERE Col2='Yes'",0),IFERROR(SEQUENCE(1,2)/0))},"where Col1 is not null"))
https://stackoverflow.com/questions/67139009
复制相似问题