【问题标题】:google sheets array formula split and import range谷歌表格数组公式拆分和导入范围
【发布时间】:2020-06-24 18:45:29
【问题描述】:

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

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

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

但没有成功

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

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

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

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】:

    尝试:

    ={""; 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))")}
    

    【讨论】:

    • 非常感谢您的工作仍然存在一个小问题,即它不会仅过滤与单个学生相关的值 - 更改查询参数可能是可行的方法,但如果我不这样做,如何查询知道列号
    猜你喜欢
    • 2020-09-13
    • 1970-01-01
    • 2019-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多