在Excel中基于组将行连接到一个单元格的3种方法
Author: Sun Last Modified: 2025-07-31
在Excel中处理结构化数据集时,基于组将多行数据合并到一个单元格是一个常见的需求。例如,您可能希望将与同一班级关联的所有名称合并到一个单元格中。本文提供了针对不同专业水平和使用场景的各种方法的分步说明及优化方案。
使用公式和筛选功能进行分组和连接
您可以结合Excel的公式和“筛选”功能,根据某一列对行进行连接。请按照以下步骤操作:
注意:确保您的数据已按分组列(如本例中的“班级”)排序。
- 在新列中输入以下公式以连接名称,并按下“Enter”。向下拖动以应用到整个列区域。
=IF(A2=A1,C1&", "&B2,B2)
- 在新列中输入以下公式,按下“Enter”,然后向下拖动公式。
=IF(A2<>A3,"Last","")
- 选择包括辅助列在内的所有数据区域。选择“数据” > “筛选 以添加 Filter图标 到数据中。
- 点击 “筛选图标” 在最后一个辅助列中,仅勾选“最后 ”复选框,然后点击“确定”。
现在结果如下所示,如果不再需要最后一个辅助列,您可以将其删除。
使用Kutools for Excel轻松分组并连接
“Kutools for Excel”提供了一个简单高效的解决方案——“高级合并行”,只需几次点击即可将分组的行合并到一个单元格中。它会自动添加自定义分隔符,如逗号、空格或换行符,以满足多样化的数据展示需求。
Kutools for Excel - 包含超过 300 个 Excel 必备工具。永久免费享受 AI 功能!立即下载!
- 突出显示包含数据的单元格。导航至“Kutools” > “合并与拆分” > “高级合并行”。
- 在“高级合并行 ”窗口中,请按以下配置:
- 单击您希望基于其合并行的列,并设置为“主键”。
- 对于您希望连接的列(如本例中的“名称”列),在该列的“操作”字段下的“合并”部分指定一个分隔符。
- 点击“确定”按钮。
结果:Kutools将根据组自动将数据合并到一个带有特定分隔符的单元格中。
注意:在应用此工具之前,建议创建原始数据的副本。
Kutools for Excel - 通过超过300个必备工具,让Excel功能大幅提升。永久免费享受AI功能!立即获取
使用VBA代码分组并连接
您还可以使用VBA根据组动态地连接行。
- 按下 “Alt” + “F11”键以启用“Microsoft Visual Basic for Applications”窗口。
- 在代码编辑器中,点击“工具 > "引用 以启用“引用 ”对话框,勾选“Microsoft 脚本运行时 ”并保存更改。
- 转到“插入” > “模块”,并将以下VBA代码粘贴到模块窗口中。 VBA:基于组将行连接到一个单元格
Sub ConcatenateCellsIfSameValues() 'UpdatebyExtendoffice20180201 Dim I As Long Dim J As Long Dim xRg As Range Dim xRgKey As Range Dim xRgVal As Range Dim xStr As String Dim xDic As New Dictionary On Error Resume Next Set xRg = Application.InputBox("Select data range", "KuTools for Excel", Selection.Address, , , , , 8) If xRg Is Nothing Then Exit Sub Set xRgKey = Application.InputBox("Select key column", "KuTools for Excel", xRg.Columns(1).Address, , , , , 8) If xRgKey Is Nothing Then MsgBox "Key column cannot be empty", vbInformation, "KuTools for Excel" End If Set xRgVal = xRg(1).Offset(, 1).Resize(xRg.Rows.Count, xRg.Columns.Count - 1) For I = 1 To xRgKey.Count If I > xRgKey.Count Then Exit For xStr = "" For J = 1 To xRgVal.Columns.Count xStr = xStr & " " & xRgVal(I, J) Next If xDic.Exists(xRgKey(I).Text) Then xDic(xRgKey(I).Text) = xDic(xRgKey(I).Text) & xStr xRgKey(I).EntireRow.Delete I = I - 1 Else xDic.Add xRgKey(I).Text, xStr End If Next For I = 1 To xRgVal.Count xRgVal(I).Value = xDic(xRgKey(I).Text) Next End Sub
- 按下“F5 ”键运行脚本,并根据提示选择您的数据范围并指定关键列。
结果如下所示:
在Excel中处理数据时,分组和合并单元格是一项常见但复杂的任务。根据您的需求和工具,可以选择多种方法来实现这一目标。根据您的具体需求和偏好选择最合适的工具和方法,让您的Excel工作更加高效便捷。如果您有兴趣探索更多Excel技巧, 我们的网站提供了数千个教程,帮助您掌握Excel。
演示:使用Kutools for Excel的高级合并行进行分组和连接
Kutools for Excel:超过 300 种实用工具触手可及!永久免费享受 AI 功能!立即下载!
最佳 Office 办公效率工具
🤖 | Kutools AI 助手:基于智能执行,彻底革新数据分析 |生成代码|创建自定义公式|分析数据并生成图表|调用 Kutools Functions… |
热门功能:查找、选中项的背景色或标记重复项|删除空行|合并列或单元格且不丢失数据|四舍五入(无公式)... | |
高级 LOOKUP:多条件查找 (VLookup)|多值查找 (VLookup)|多表查找 (VLookup Across Multiple Sheets)|模糊查找 (Fuzzy Lookup)... | |
高级下拉列表:快速创建下拉列表|依赖型下拉列表|多选下拉列表... | |
列管理器:添加指定数量的列 |移动列 |切换隐藏列的可见状态| 比较区域及列... | |
特色功能:网格聚焦|设计视图|增强编辑栏|工作簿 & 工作表管理器|资源库(自动文本)|日期提取|合并数据|加密/解密单元格|按列表发送电子邮件|超级筛选|特殊筛选(筛选粗体/倾斜/删除线等)... | |
热门15 大工具集:12 款文本工具(添加文本、删除特定字符等)|50+ 种图表 类型(甘特图等)|40+ 实用公式(基于生日计算年龄等)|19 款插入工具(插入二维码、按路径插入图片等)|12 种转换工具(小写金额转大写、汇率转换等)|7 款合并与分割工具(高级合并行、分割单元格等)|...更多精彩等你发现 |
使用 Kutools,支持您的首选语言——包括英语、西班牙语、德语、法语、中文及40 多种其他语言!
用 Kutools for Excel 加速你的 Excel 技能,体验前所未有的高效办公。 Kutools for Excel 提供300 多项高级功能,助您提升效率,节省大量时间。点击此处,获取你最需要的功能...
Office Tab 为 Office 带来标签式界面,让你的工作更加轻松
- 在 Word、Excel、PowerPoint 启用标签式编辑和阅读
- 在同一窗口的新标签中打开和创建多个文档,无需新建窗口。
- 办公效率提升50%,每天帮你减少上百次鼠标点击!