Google工作表数组公式可将响应从Google表单自动转置为单个单元格

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

我想调整一个数组公式,我试图将其用于将一组来自Google表单的响应转置为链接的Google表格中单元格中的单个“列表”。

这里是Google表格的简化模型:https://docs.google.com/spreadsheets/d/1BKgjGK2RbXC5FkCgBOU53dLEb3fDeQADujenrqRgnT0/edit?usp=sharing

如您所见,我在A列的标题中有一个有效的Array Formula'hidden',它从每一行的B:K列中获取内容,并通过换行符对其进行换位,从而在第一行中形成一个整洁的列表每行开始处的单元格(A2,A3,A4等)。这是数组公式,易于参考:

=ARRAYFORMULA({"Points to Develop";
transpose(query(transpose ($B$2:$B&CHAR(10)&$C$2:$C&CHAR(10)&$D$2:$D&CHAR(10)&$E$2:$E&CHAR(10)&$F$2:$F&CHAR(10)&$G$2:$G&CHAR(10)&$H$2:$H&CHAR(10)&$I$2:$I&CHAR(10)&$J$2:$J&CHAR(10)&$K$2:$K)
))})

我遇到的问题是,提交新的Google表单后,该公式就会停止工作,因为新的响应行到达顶部,并且“将公式向下推” /使所有内容失去对齐,我希望它保持原位并在每次提交表单时自动运行。正如您可能可以通过我有限的技术术语来衡量的那样,我对此非常新手!

我该如何修正此公式,或者有一个更简单或更佳的替代方法能够达到相同的结果?

google-sheets transpose array-formulas google-form
1个回答
1
投票

就像生活中经常发生的那样,问题的本质是解决方案的源头。当我慢慢找到答案的时候,这是我思想的简明版本(您几乎可以听到仓鼠轮子在转动我的头!):

  • 与Google表单链接的Google表格中的公式存在的问题是,表单中的每个新条目/提交始终会到达第2行…

  • 实际上,唯一保留在Google表格中的是标题行/行1…

  • 因此,我应该使用始终引用,即使用OFFSET

由此产生的显而易见的公式(如果不够优雅)是[我也将它放在了我在原始问题中链接到的Google表格的最后一列中:]]

= ARRAYFORMULA({"Points to Develop [Working OFFSET Formula]"; transpose(query(transpose(OFFSET(A1:A,1,1)&CHAR(10)&OFFSET(A1:A,1,2)&CHAR(10)&OFFSET(A1:A,1,3)&CHAR(10)&OFFSET(A1:A,1,4)&CHAR(10)&OFFSET(A1:A,1,5)&CHAR(10)&OFFSET(A1:A,1,6)&CHAR(10)&OFFSET(A1:A,1,7)&CHAR(10)&OFFSET(A1:A,1,8)&CHAR(10)&OFFSET(A1:A,1,9)&CHAR(10)&OFFSET(A1:A,1,10)))) })

我确信可以有一些更整洁的方法来获得相同的结果,但这是一种对我有用的方法……并且处于我的理解水平之内,因此我可以根据需要进行微调和修复。 
© www.soinside.com 2019 - 2024. All rights reserved.