You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Spreadsheet 按问题批量自动合并受访者答案需求

批量合并Google Sheets问卷问题的受访者答案

针对你有100个问卷问题、每个问题选项列数不一的情况,下面两种方法可以自动完成按问题合并答案的需求,无需手动逐个设置公式:


方法1:辅助列+QUERY分组(推荐,逻辑清晰)

步骤1:标记每列对应的问题

在你的问卷数据Sheet(比如Sheet1)里找一个空白列(比如Z列,确保该列没有其他数据),在Z1单元格输入公式:

=ARRAYFORMULA(LOOKUP(COLUMN(A:Y), COLUMN(A:Y)/(Sheet1!1:1<>""), Sheet1!1:1))

把公式里的A:Y替换成你实际的问卷数据列范围(比如数据到CZ列就改成A:CZ)。这个公式会自动给每一列打上所属问题的标签,不管每个问题占多少列。

步骤2:自动分组合并答案

新建一个Sheet(比如Sheet2),在A1单元格输入:

=QUERY({FLATTEN(Sheet1!Z3:Z), FLATTEN(Sheet1!A3:Y)}, "select Col1, TEXTJOIN(', ', TRUE, Col2) where Col2 is not null group by Col1 label Col1 '问题', TEXTJOIN(', ', TRUE, Col2) '合并答案'", 1)

同样替换Z3:Z(辅助列的行范围)和A3:Y(问卷回答的列范围)为你实际的范围。运行后会直接输出每行一个问题,对应的所有受访者答案用逗号分隔合并。


方法2:无辅助列直接生成

如果不想用辅助列,分两步操作:

  1. 提取所有问题:在Sheet2的A1单元格输入公式,自动拉出100个问题:
    =ARRAYFORMULA(TRIM(FILTER(Sheet1!1:1, Sheet1!1:1<>"")))
    
  2. 批量合并答案:在Sheet2的B1单元格输入数组公式,自动为每个问题生成合并后的答案:
    =ARRAYFORMULA(IF(A:A="", "", TEXTJOIN(', ', TRUE, FILTER(FLATTEN(Sheet1!3:1000), XMATCH(COLUMN(Sheet1!3:1000), ARRAYFORMULA(IF(Sheet1!1:1=A:A, COLUMN(Sheet1!1:1), "")), 0)))))
    
    把Sheet1!3:1000改成你实际的受访者回答行范围(比如有500个受访者就改成3:502)。

额外适配:如果是勾选式答案(TRUE/FALSE)

如果你的问卷是勾选选项(单元格显示TRUE/FALSE),想要合并选项文本而不是布尔值,可以修改QUERY公式为:

=QUERY({FLATTEN(Sheet1!Z3:Z), FLATTEN(IF(Sheet1!A3:Y=TRUE, Sheet1!A2:Y2, ""))}, "select Col1, TEXTJOIN(', ', TRUE, Col2) where Col2 is not null group by Col1 label Col1 '问题', TEXTJOIN(', ', TRUE, Col2) '合并答案'", 1)

这个公式会自动把勾选的选项文本提取出来合并。

内容的提问来源于stack exchange,提问作者IanG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 22:07:45