使用查询来合并不断变化的选项卡列表中的数据

问题描述 投票:0回答:1

我正在构建一个工作表,该工作表将从其他选项卡中导入数据并将其合并到摘要表中,供我在其他地方使用。问题是,这些选项卡将每月导入,因此很快就会有几十个选项卡,我不想每月都编辑查询功能。它们都将具有相同的命名格式,但是我想知道是否有人对如何使用可从另一个单元格提取的工作表名称变量制定查询的想法。例如,我可以将选项卡名称导入另一行,并让查询从该行中提取工作表名称,但是我不熟悉如何执行此操作。这是我在类似表格中使用的查询公式的示例:

=QUERY({'2019 TEAM SALES'!A2:ZY; '2020 TEAM SALES'!A2:ZY}, "select * Where Col1 is not null",1)

有了这个,每年更新一次没什么大不了的。但是此新工作表将是每月一次,因此在短短几个月内将变得笨拙。有没有一种使用查询通过单元格信息获取工作表名称的方法?就像在第1行中一样,我用范围来合并工作表名称,以便A1包含“'2019 TEAM SALES'!A2:ZY”和B1中的下一个,依此类推,然后查询公式为:

=QUERY(A1:ZZ1, "select * Where Col1 is not null",1)

这样,它将始终拉入合并所需的所有当前选项卡。顺便说一句,我愿意使用其他公式甚至脚本来完成此操作,因为这是我追求的结果,而不是方法。

我已经看到了很多类似于here的答案,但是这仍然迫使我认为非常长的公式非常无效,因为该工作表最终将包含50个或更多选项卡。感谢您提供任何见解!

google-sheets google-sheets-formula google-sheets-query
1个回答
0
投票

解决方案

为了在公式中使用单元格值(您的变量)以使整个过程自动化,您可以使用公式indirect,该公式可让您在公式中使用单元格值。因此,您最终将得到如下结果:

=QUERY({INDIRECT(A1);INDIRECT(A1)}, "select * Where Col1 is not null",1)

其中A1是包含2019 TEAM SALES!A2:Y2的单元格

我希望这对您有所帮助。让我知道您是否需要其他任何东西,或者您是否不了解。 :)

© www.soinside.com 2019 - 2024. All rights reserved.