Google表格数组公式的拆分和导入范围

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

我正在尝试构建一个非常复杂的公式,但是到目前为止,如果没有成功,我将不胜感激!首先,我尝试将存储来自Google表单的答案的工作表与其他工作表进行同步,以进行摘要,因此,例如,我将3个工作表与3种不同的表单进行了同步,所有工作表都有一个名为学生代码的列(它的命名范围不是第一行中的值)。然后我用另一个公式公式创建了与用户相关的电子表格的逗号分隔列表(例如,我知道学生1处于练习a b c中,因此我将所有电子表格的链接都以逗号分隔的形式插入了适当的单元格中字符串),所以我想实现

  1. 我试图通过公式从每个相关电子表格的导入范围

=Arrayformula(Filter(IMPORTRANGE(SPLIT(AB2, ",", TRUE, TRUE),"'Form responses 1'!A1:Z1000")))

但没有成功

  1. 从此表中获取第一行
  2. 过滤我有学生代码的行(名为studCode的列,其值是适当的学生代码)
  3. 加入所有这些操作的行,所以我将在第1行(带有问题文本的行)测试1,然后在学生答案的行中测试,然后在问题中测试2的学生对这些测试的答案...

我将非常感谢您的帮助(哦,我宁愿通过Google表格公式而不是通过应用脚本功能来实现它-因为导入范围比使用表格服务应用内脚本要有效得多)

我创建了测试用例,以帮助解决问题我要在其中累积数据的摘要电子表格:

https://docs.google.com/spreadsheets/d/1cJn8CX25t98GI9E4aYgsQPNt28w_sX0ynfhwkG3ZKyA/edit?usp=sharing

模拟从表单导入的数据的电子表格:

https://docs.google.com/spreadsheets/d/1BgYN7f6ojk7NhOlj2FuSm0goMt_HjqkebWiOJYQmN0E/edit?usp=sharing

https://docs.google.com/spreadsheets/d/19cDQR-tN5_S_rblc-hbavxVF0xforoMaKUQYjuYBN-E/edit?usp=sharing

https://docs.google.com/spreadsheets/d/1QPMcHIH5PXQwWbAULk7vxJ4g-pSXK1qHKhFvLwdRaAU/edit?usp=sharing

arrays google-sheets array-formulas google-sheets-query importrange
1个回答
1
投票

尝试:

={""; ARRAYFORMULA("=QUERY({"&TEXTJOIN(";", 1, "IMPORTRANGE("""&
 TRANSPOSE(SPLIT(B2, ","))&""", ""'Sheet1'!A1:Z1000"")")&
 "}, ""where Col1 is not null"", 0)")}

0

然后复制生成的公式并将其粘贴到您需要的位置:

0


更新:

={""; ARRAYFORMULA("=FILTER(QUERY({"&TEXTJOIN(";", 1, "IMPORTRANGE("""&
 TRANSPOSE(SPLIT(B2, ","))&""", ""'Sheet1'!A1:Z1000"")")&
 "}, ""where Col1 is not null"", 0), REGEXMATCH(TRANSPOSE(QUERY(TRANSPOSE(QUERY({"&
 TEXTJOIN(";", 1, "IMPORTRANGE("""&
 TRANSPOSE(SPLIT(B2, ","))&""", ""'Sheet1'!A1:Z1000"")")&
 "}, ""where Col1 is not null"", 0)),,99^99)), A2))")}

0

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