工作表中的弹性报表数据-从多张工作表中提取(相同的电子表格)

时间:2019-09-11 18:45:41

标签: arrays google-sheets filter google-sheets-formula google-sheets-query

我使用Google表格跟踪试用情况,并为每个客户提供一个标签。在该工作表中,有一个部分用于说明未完成的项目。而不是不必查看每个选项卡中的未完成项,而是尝试将“打开”项汇总到单个摘要页面。

当项目从“打开”移动到“关闭”时,摘要页面必须是动态的,而且还必须自动说明为启动的新客户试用而创建的新选项卡。同样,数据可能并不总是从A45开始,如果我必须在上面添加内容,它可能从A49开始,但是我在上面的行中有一些尝试尝试触发(如果可能)

尝试使用FILTER函数执行此操作,但这存在问题。我要么必须手动添加每个页面,并具有适当的间距,要么使用串联的过滤器来确定所讨论的确切单元格。

希望“摘要”页面是动态的(或尽可能动态的)。 对于现有的试用版,如果我将某些内容从“打开”移到“关闭”,则将其从“摘要”页面中删除,其他所有内容都向上移动。如果某些内容从“关闭”更改为“打开”,请进行相应插入并将所有内容下移。 最好的情况是,当我将模板文件复制到新客户的新选项卡时,该新选项卡将自动包含在提取摘要报告的数据集中。


已更新:

https://docs.google.com/spreadsheets/d/1759z0SoxANp--yt4HcI06-jpEt951ejJquYpwKE9V9E/edit?usp=sharing

这是我要尝试执行的操作的基础,但是需要一些手动操作和错误。 您可以看到FILTER函数的作用,如何将Cust-A和B的问题数据填充到“未解决的问题”选项卡中。不幸的是,如果您要将客户A的item4的状态更改为“打开”,则结果页(A3)将进入#REF!状态,因为它现在需要4行,而第4行由下一个过滤器。另外,A的FILTER与B有所不同,因为客户B有更多的联系方式和成功标准。

我真的很想自动运行一些东西,并自动查看每张纸,包括为客户C添加新标签时。这样可以避免我在重新执行操作时必须定义正确的空间数量每个新标签的FILTER

1 个答案:

答案 0 :(得分:0)

解决此问题:

0


删除 A 列中的所有内容并将其粘贴到 A3 单元格中:

={FILTER('CUST-A'!A18:O29, 'CUST-A'!F18:F29="Open");
  FILTER('CUST-B'!A20:O31, 'CUST-B'!F20:F31="Open")}

0


但这还不够,要解决更多错误,您需要像这样:

=QUERY(
 {IFERROR(FILTER('CUST-A'!A18:O29, 'CUST-A'!F18:F29="Open"), 
 {"","","","","","","","","","","","","","",""});
  IFERROR(FILTER('CUST-B'!A20:O31, 'CUST-B'!F20:F31="Open"),
 {"","","","","","","","","","","","","","",""})}, 
 "where Col1 is not null", 0)

0


然后您甚至可以执行以下操作:

=QUERY(
 {IFERROR(FILTER('CUST-A'!A18:O29, 'CUST-A'!F18:F29="Open"), 
 {"","","","","","","","","","","","","","",""});
  IFERROR(FILTER('CUST-B'!A20:O31, 'CUST-B'!F20:F31="Open"),
 {"","","","","","","","","","","","","","",""});
  IFERROR(FILTER('CUST-C'!A20:O31, 'CUST-C'!F20:F31="Open"),
 {"","","","","","","","","","","","","","",""});
  IFERROR(FILTER('CUST-D'!A20:O31, 'CUST-D'!F20:F31="Open"),
 {"","","","","","","","","","","","","","",""});
  IFERROR(FILTER('CUST-E'!A20:O31, 'CUST-E'!F20:F31="Open"),
 {"","","","","","","","","","","","","","",""})}, 
 "where Col1 is not null", 0)

0