我正在尝试构建一个非常复杂的公式,但是到目前为止,如果没有成功,我将不胜感激!首先,我尝试将存储来自Google表单的答案的工作表与其他工作表进行同步,以进行摘要,因此,例如,我将3个工作表与3种不同的表单进行了同步,所有工作表都有一个名为学生代码的列(它的命名范围不是第一行中的值)。然后我用另一个公式公式创建了与用户相关的电子表格的逗号分隔列表(例如,我知道学生1处于练习a b c
中,因此我将所有电子表格的链接都以逗号分隔的形式插入了适当的单元格中字符串),所以我想实现
=Arrayformula(Filter(IMPORTRANGE(SPLIT(AB2, ",", TRUE, TRUE),"'Form responses 1'!A1:Z1000")))
但没有成功
我将非常感谢您的帮助(哦,我宁愿通过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
尝试:
={""; ARRAYFORMULA("=QUERY({"&TEXTJOIN(";", 1, "IMPORTRANGE("""&
TRANSPOSE(SPLIT(B2, ","))&""", ""'Sheet1'!A1:Z1000"")")&
"}, ""where Col1 is not null"", 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))")}