Excel中如何将两列纵向分组列表按分组保留关联转置为横向列表
这个需求完全可以实现,根据你使用的Excel版本不同,可选择对应方案操作:
方案1:Excel 365/2021及以上版本(支持动态数组)
操作最简便,无需手动下拉填充:
- 在C2单元格输入公式:
=FILTER($B:$B,$A:$A=C$1,""),按回车后会自动溢出Honda品牌下的所有车型 - 在D2单元格输入公式:
=FILTER($B:$B,$A:$A=D$1,""),按回车后自动溢出Toyota品牌下的所有车型
方案2:旧版Excel(无动态数组功能)
使用数组公式实现,操作步骤如下:
- 选中C2单元格,输入公式:
=IFERROR(INDEX($B:$B,SMALL(IF($A:$A=C$1,ROW($A:$A),99999),ROW(A1))),"") - 按下
Ctrl+Shift+Enter三键组合结束数组公式输入,此时公式外侧会自动出现大括号标识 - 下拉C2单元格填充到足够行数(行数≥单个品牌下最多的车型数量即可)
- 把C列的公式直接右拉到D列,即可自动生成Toyota对应的所有车型
- 如果不想显示空行,填充到出现空值时停止即可
公式逻辑说明:先筛选A列匹配当前列品牌的所有行号,按顺序取出对应行的B列车型值,无匹配项时返回空值避免显示错误。
内容的提问来源于stack exchange,提问作者Edgar Nava
相关产品推荐
相关产品推荐

