带过滤器的数组公式,用于合并Google表格中的多个工作表-空工作表存在问题 [英] Array Formula with Filter for merging multiple sheets in Google Sheets - problem with empty sheet

查看:121
本文介绍了带过滤器的数组公式,用于合并Google表格中的多个工作表-空工作表存在问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用此公式合并多张纸(大约100张,但为简单起见,只坚持使用3张纸:Sheet1,Sheet2和Sheet3),其中我不知道我有多少个非空行(同样,它们迅速增加).

I am using this formula to merge multiple sheets (about 100, but for simplicity just stick with 3 sheets: Sheet1, Sheet2 and Sheet3), in which I do not know how many non-empty rows I have (also, they increase dinamically).

={FILTER(Sheet1!A2:L;LEN(Sheet1!A2:A));FILTER(Sheet2!A2:L;LEN(Sheet2!A2:A));FILTER(Sheet3!A2:L;LEN(Sheet3!A2:A))}

如果所有工作表中至少有一行填充了值,则该公式效果很好.但是,问题是,例如,如果Sheet2为空,则公式会给我一个错误:

The formula works well if all the sheets have at least one row filled with values. However, the problems is that if, for example, Sheet2 is empty, the formula gets me an error:

在ARRAY_LITERAL中,数组文字缺少一个或多个行的值

如何解决此错误?

推荐答案

问题是:当您的工作表为空时,将返回错误消息.但是此消息只是一个单元格.为了保持形状,您的数组需要所有行都具有12列(从A到L)这就是为什么您要使用数组文字..."消息

The problem is: When your sheet is empty, error message is returned. But this message is just one cell. Your array to keep it's shape needs all rows to have 12 columns (A to L) That's why you have "array literal..." message

您应该设置一个条件,以便在出现内容为空的错误的情况下创建一个包含12个单元格的空行.

You should set a condition for that creates an empty row of 12 cells in case of error with empty content.

尝试:

Iferror(FILTER(Sheet1!A2:L;LEN(Sheet1!A2:A));{""\""\""\""\""\""\""\""\""\""\""\""}) 

对于您知道为空的工作表

for a sheet that you know as empty

\分隔符适用于某些工作表区域设置,但是对于美国,英国使用逗号(因为我看到您在公式中的值之间使用分号,因此\应该可以使用).

\ separator works for some sheet locales but for USA, UK use comma (as I see you use semicolon between your values in formulas so \ should work).

这篇关于带过滤器的数组公式,用于合并Google表格中的多个工作表-空工作表存在问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆