我正在尝试构建一个非常复杂的公式,但是到目前为止,如果没有成功,我将不胜感激!
首先,我尝试将存储来自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
答案 0 :(得分:2)
尝试:
={""; 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))")}