如何让Google Sheets自动合并Google表单提交的姓名至全名列?
问题描述
在Google Sheets的Google表单响应表中,A列为名字,B列为姓氏。我使用=ARRAYFORMULA(A5& " "&B5)公式将姓名合并至C列生成全名。手动输入新姓名时C列会自动生成全名,但通过Google表单提交新姓名时,需下拉公式才会生成,如何实现表单提交后自动生成全名?
| 名字 | 姓氏 | 全名 |
|---|---|---|
| Bob (手动输入) | Smith (手动输入) | Bob Smith |
| Mike (Google表单响应) | McDonald (Google表单响应) | ____________ |
解决方案
你当前用的ARRAYFORMULA(A5& " "&B5)只对A5、B5这一行生效,Google表单提交新数据时会在表格末尾新增行,这些行不在公式的作用范围内,所以得手动下拉触发计算。
要实现自动生成,只需修改C列的数组公式,让它覆盖整个目标列的所有行:
- 清空C列里除公式单元格外的所有内容,避免公式冲突
- 在C列的起始数据行,比如数据从第5行开始就选C5,输入以下公式:
=ARRAYFORMULA(IF(A5:A="", "", A5:A&" "&B5:B))
如果你的数据是从第2行开始,就把公式里的A5:A和B5:B替换成A2:A和B2:B。
这个公式会遍历A列从指定行到最后一行的所有单元格:只要A列对应行不为空,就自动合并该行的名字和姓氏;如果A列为空,就返回空值,避免生成无意义的空格行。
设置完成后,不管是手动输入新数据还是通过Google表单提交,C列都会自动生成对应的全名。
内容的提问来源于stack exchange,提问作者Ramen Noodles
相关产品推荐
相关产品推荐

