我有一个谷歌页,收集学生的分数从不同的工作表,以创建一个完整的成绩单。每位教师在自己的电子表格中输入分数,并以纸张编号作为纸张名称。任何单张都只有两列:Roll#和Marks。使用纸张编号(纸张名称)、Google键、Roll#和Marks的组合,我手动创建公式,使用排序、ArrayFormula和IMPORTRANGE函数整理数据。这个很管用。
但是手动创建公式是一种容易出错的方法。另外,我想教每个老师如何做到这一点。
我想要的是在单元格G23中添加公式,以便根据它上面的单元格G2:G22中的条目动态地创建IMPORTRANGE。如果有三个名称,则创建三个IMPORTRANGE;如果有五个名称,则动态创建五个IMPORTRANGE,以便通过封装ArrayFormula并排序来合并这些IMPORTRANGE。
现有的公式是我手动创建的,它可以工作。我只想得到一个公式,这样如果在G2-G22中添加了一个新的教师名称,那么在ArrayFormula中就会添加一个新的IMPORTRANGE。
发布于 2016-03-24 11:28:53
由于importrange函数具有输出数组的能力,因此不能在数组中迭代。
若要组合您的公式,请使用此公式:
="=sort(ARRAYFORMULA({"&JOIN(";",ArrayFormula("IMPORTRANGE("""&VLOOKUP(FILTER(G2:G20,G2:G20<>""),Sheet3!$A$2:$B,2,0)&""","""&G1&"!A2:B"")"))&"}),1,True,2,True)"然后可以手动将结果粘贴到G23或use script to paste formula中。
https://stackoverflow.com/questions/36198117
复制相似问题