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

Google Sheets中按关键字将多行数据合并为单行多列的方法问询

Google Sheets 学生课时教师数据合并方案

你要做的是按学生姓名分组,将对应不同课时的教师姓名横向聚合到同一行,属于数据透视/行列转换类操作,下面给两种高效的公式方案,适配大数据量场景:

方法一:QUERY函数批量生成(推荐,效率高)

假设原数据在A:C列(A=学生姓名,B=课时,C=教师姓名),在空白单元格输入以下公式,直接生成所有学生的合并结果:

=QUERY(A:C, "SELECT A, MAX(CASE WHEN B=1 THEN C END), MAX(CASE WHEN B=2 THEN C END), MAX(CASE WHEN B=3 THEN C END), MAX(CASE WHEN B=4 THEN C END), MAX(CASE WHEN B=5 THEN C END), MAX(CASE WHEN B=6 THEN C END) GROUP BY A", 1)
  • 原理:用CASE WHEN把每个课时对应的教师姓名映射到单独列,GROUP BY A按学生分组,MAX确保每个课时只取唯一教师(因为你每个学生每个课时只有一条记录)
  • 参数1表示原数据第一行是表头,生成结果会自动保留表头

方法二:UNIQUE+FILTER+TRANSPOSE组合(灵活易调整)

  1. 先提取唯一学生列表:在空白单元格(比如E1)输入=UNIQUE(A:A),得到所有不重复的学生姓名
  2. 在学生列表右侧的单元格(比如F2)输入以下公式,下拉填充:
=TRANSPOSE(FILTER($C:$C, $A:$A=E2))
  • 原理:FILTER筛选出当前学生的所有教师姓名,TRANSPOSE把纵向结果转成横向排列

关于IMPORT RANGE的说明

IMPORT RANGE是跨Google Sheets表格取数的工具,你是在同一张表格内处理数据,完全不需要用它。之前报错大概率是权限未授权或引用格式错误,直接用上面的方案即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 07:42:09