KutoolsforOffice — 一套方案,五大工具。事半功倍。

如何在 Excel 中将单元格内容拆分为多行(场景 + 工具对比)

作者修改日期

本指南将为您详细介绍如何在 Excel 中将单元格内容拆分为多行,涵盖两种常见场景:一是仅拆分目标单元格(忽略其他列),二是在拆分单元格的同时保留该行中的其余数据。文中提供了多种高效方法,包括内置 Excel 函数、Power Query、VBA 以及第三方插件,助您轻松应对各类拆分需求。

两种常见拆分场景

根据是否需要保留数据集中的其他列,数据拆分可分为多种方式。此处我们为您定义了两种主要方法,助您按需选择最合适的方式。

场景 1:仅拆分目标单元格(忽略其他列)

有时,您只关注单个单元格中的值,希望将其拆分为多行以便阅读,而无需复制该行中的关联数据。

示例

A,B,C

结果:

A
B
C

用例:适用于轻量级数据清理或展示任务,其中其他列无关紧要。

场景 2:拆分单元格并保留其他列数据

在其他情况下,您需要将每个拆分值与原始行的数据配对——本质上是将一行扩展为多条记录。

示例

USA | A,B,C

结果:

USA | A
USA | B
USA | C

使用场景:数据标准化,其中保持各列之间的关联性至关重要。


何时需要将单元格内容拆分为多行?

拆分单元格的分步方法

常见问题


何时需要将单元格内容拆分为多行?

在深入介绍具体方法之前,了解为何需要拆分单元格至关重要——这一操作通常是数据清洗、重构或可视化工作流中的关键环节。

典型使用场景包括:

  • 单列中包含多个值,例如标签、ID 或地址等合并存储的数据。
  • 数据透视表或图表:在规范化数据格式下,效果更佳。
  • 导入数据清理:尤其是来自 CRM 导出或调查工具的数据。
  • 数据标准化:让您的表格更契合数据库规范,为高效分析做好准备。

拆分单元格的分步方法

现在您已明确自己的使用场景,接下来我们将带您探索多种拆分方法——从内置功能到高级自动化。请选择最适合您技术水平和使用频率的方案。


方法 1:Excel 原生函数(“文本分列”+“选择性粘贴”中的转置选项)

这是一种仅利用 Excel 内置功能的直接手动方法,非常适合一次性操作。

适用于:场景 1 仅拆分目标单元格(忽略其他列)

步骤:

步骤 1. 请选择该单元格。

步骤 2. 选择“数据”>“文本分列”。

doc-method-1-select-text-to-column

步骤 3. 在“文本分列向导”中,

  1. 选择“分隔符号”,然后单击“下一步”。

    doc-method-1-text-to-column-select-delimited

  2. 选择“逗号”,然后单击“下一步”。

    doc-method-1-text-to-column-select-comma

  3. 选择目标单元格,然后单击“完成”。

    doc-method-1-text-to-column-select-destination-cell

该单元格现已按逗号拆分为多列。

doc-method-1-text-to-column

步骤 4. 选中要分割的单元格,按 Ctrl + C 复制;右键单击目标单元格,在“选择性粘贴”中点击“转置”图标。

doc-method-1-transpose-paste

内容将以行的形式进行转置显示。

doc-method-1-transpose-paste-result

优点缺点
  • 无需安装。
  • 易于理解。
  • 不会自动更新。
  • 需手动操作,且无法扩展。

方法 2:TRANSPOSE(TEXTSPLIT()) 函数——(Microsoft 365)

此方法结合 TEXTSPLIT 函数(按分隔符拆分文本)与 TRANSPOSE 函数,可立即将拆分后的值以多行形式垂直呈现。

适用于:场景 1 仅拆分目标单元格(忽略其他列)

步骤:

步骤 1. 在希望垂直列表开始的空白单元格中输入公式。

公式示例:单元格 A1 是用于拆分至多行的目标单元格。

在此情况下,公式为

=TRANSPOSE(TEXTSPLIT(A1,","))</div)

提示:您可以根据数据的分隔方式,将分隔符“,”替换为“;”或“|”。

步骤 2. 按下 ENTER 键。

doc-method-2-use-transpose-split-function

优点缺点
  • 完全动态,且会随更改自动更新。
  • 无需插件,也无需手动操作。
  • 仅适用于支持 TEXTSPLIT 函数和动态数组的 Excel 版本(Excel 365)。

方法 3:Power Query – 拆分并展开行(Microsoft 2016 及更高版本)

Power Query 非常适合执行结构化且可重复的操作,功能强大、支持刷新,是批量数据转换的理想之选。

适用于:场景 1(仅拆分目标单元格)和场景 2(拆分单元格并保留其他列数据)

步骤:以场景 1(仅拆分目标单元格)为例

步骤 1. 选择您的数据范围,然后依次点击“数据”>“获取和转换”>“从表格/区域”。

一个

步骤 2. 在“创建表”对话框中,单击“确定”。(如果所选区域包含标题,请勾选“我的表包含标题”。)

doc-method-3-convert-to-table

步骤 3. 在 Power Query 编辑器中,使用“按分隔符拆分列”功能。

doc-method-3-select-delimiter

步骤 4. 选择或输入分隔符,单击“高级”展开选项,勾选“拆分为行”,然后点击“确定”。

doc-method-3-select-delimiter-and-rows

步骤 5. 选择“关闭并加载”>“关闭并加载”或“关闭并加载至”。

doc-method-3-load

  • 关闭并加载

    功能:直接将查询结果加载至默认位置。

    doc-method-3-close-load

  • 关闭并加载至……

    功能:提供可自定义的加载选项,让您自由选择数据的存储位置与方式。 最适合:定期报表与大型数据集。

场景 2(拆分单元格的同时保留其他列数据)同样适用上述步骤——让我们看看结果如何。

目标单元格范围:

doc-method-3-scenario-2-target-cells

结果:

结果

注意:在 Power Query 编辑器窗口中,请仅选中需要拆分为行的目标列,然后点击“拆分列”下的“按分隔符”。

优点缺点
  • 实现完全自动化。
  • 可随数据量实现良好扩展。
  • 需要稍加学习。
  • 新增数据后,需手动刷新。

提示:添加“修剪”和“清理”步骤,以修复空格或特殊字符问题。


方法 4:Kutools 插件 – 点击即可拆分

如果您经常需要拆分单元格,并且偏爱图形界面操作,Kutools 是一款出色的工具——只需几次点击,即可轻松完成复杂操作。

适用于:场景 1(仅拆分目标单元格)和场景 2(拆分单元格并保留其他列数据)

步骤:场景 1(仅拆分目标单元格)

步骤 1. 请选择目标单元格。

步骤 2. 转到“Kutools”>“合并和拆分”>“分割单元格”。

步骤 3. 选择“拆分为行”,并设置分隔符,然后单击“确定”。

doc-method-4-kutools-select-rows-delimiter

步骤 4. 选择目标单元格,然后单击“确定”。

doc-method-4-kutools-select-destination

doc-method-4-kutools-result

立即下载

步骤:场景 2(拆分单元格并保留其他列数据)

步骤 1. 选择您希望分割为多行的列。

步骤 2. 转到 Kutools > 合并和拆分 > 拆分到多行。

doc-method-4-kutools-split-data-to-rows

步骤 3. 定义分隔符,然后单击“确定”。

doc-method-4-kutools-split-data-to-rows-select-delimiter

doc-method-4-kutools-split-data-to-rows-result

场景 2(拆分单元格的同时保留其他列数据)同样适用上述步骤——让我们看看结果如何。

目标单元格范围:

doc-method-3-scenario-2-target-cells

结果:

结果

优点缺点
  • 非常易于使用。
  • 只需轻点几下,即可轻松处理海量数据。
  • 需要插件(部分功能需付费)。
立即下载

注意:30 天试用版提供全部功能,供您充分体验。


方法 5:VBA 脚本 – 完全自定义控件

对于具备编程知识的用户,VBA 提供了无与伦比的灵活性,让您能够根据精确的数据布局和业务规则量身定制脚本。

适用于:场景 1(仅拆分目标单元格)和场景 2(拆分单元格并保留其他列数据)

步骤:

步骤 1. 按下 Alt + F11,即可打开 VBA 编辑器。

步骤 2. 单击“插入”>“模块”。

步骤 3. 复制下方的 VBA 代码并粘贴。

场景 1 仅拆分目标单元格

'Update by Extendoffice
Sub SplitCellToRows_Simple()
    Dim InputCell As Range
    Dim Values As Variant
    Dim i As Long

  
    Set InputCell = Range("A1") ' change A1 to your target cell

    Values = Split(InputCell.Value, ",") 
    For i = 0 To UBound(Values)
        InputCell.Offset(i, 1).Value = Trim(Values(i))
    Next i
End Sub

doc-method-5-split-to-rows-simple

场景 2 拆分单元格并保留其他列数据

'Update by Extendoffice
Sub SplitRowsWithOtherColumns()
    Dim ws As Worksheet
    Dim LastRow As Long, i As Long
    Dim arr As Variant, j As Long
    Dim SplitVals As Variant
    Dim CurrentRow As Long

    Set ws = ActiveSheet
    LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
    For i = LastRow To 2 Step -1
        If InStr(ws.Cells(i, 2).Value, ",") > 0 Then
            SplitVals = Split(ws.Cells(i, 2).Value, ",")

            For j = UBound(SplitVals) To 1 Step -1
                ws.Rows(i + 1).Insert Shift:=xlDown
                ws.Cells(i + 1, 1).Value = ws.Cells(i, 1).Value
                ws.Cells(i + 1, 2).Value = Trim(SplitVals(j))
            Next j

            ws.Cells(i, 2).Value = Trim(SplitVals(0))
        End If
    Next i
End Sub

doc-method-5-split-to-rows-complex

注意:此 VBA 脚本专为数据位于 A 列至 B 列、且待拆分的值位于 B 列的情况而配置。

缺点
  • 必须将文件另存为启用宏的格式(.xlsm),以便日后继续使用该脚本。

💡提示:

  • 运行宏前,请务必备份您的数据。
  • 将脚本中的“,”替换为您实际使用的分隔符(例如,分号用“;”,竖线用“|”),以精准匹配您的数据格式。

常见问题

  • 空白行或列:通常由末尾的分隔符或隐藏空格导致。
  • 合并的错误单元格:开始前请先取消合并单元格。
  • Power Query 未刷新:修改源数据后,请记得点击“刷新”。
  • 分隔符错误:混淆分号与逗号可能导致整个结果出错。

相关文章:

最佳办公效率工具

🤖KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行   |  生成代码|  创建自定义公式  |  数据分析及生成图表|  调用 Kutools Functions……
热门功能查找、高亮或标记重复项   |  删除空白行   |  合并列或单元格且不丢失数据   |  不使用公式的四舍五入……
高级 LOOKUP多条件 VLookup  |  多值 VLookup  |   跨多工作表 VLookup   |   模糊查找……
高级下拉列表快速创建下拉列表   |  级联下拉列表   |  多选下拉列表……
列管理器添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列……
特色功能网格聚焦   |  设计视图   |增强编辑栏   | 工作簿和表管理器   |  资源库(自动文本)|  日期提取   |  汇总工作表  |  加密/解密单元格   | 按列表发送邮件   |  超级筛选   |   特殊筛选(筛选粗体单元格/斜体/删除线……) ......
精选 15 工具集12 文本工具添加文本删除特定字符,……)|   50+ 图表 类型甘特图,……)|   40+ 实用公式基于生日计算年龄,……)|   19 插入工具插入二维码从路径插入图片,……)|   12 转换工具小写金额转大写汇率转换,……)|   7 合并和拆分工具高级合并行分割单元格,……)|……更多
在您的首选语言中使用 Kutools – 支持英语、西班牙语、德语、法语、中文及 40+ 种其他语言!

使用 Kutools for Excel 大幅提升您的 Excel 技能,体验前所未有的高效。Kutools for Excel 提供 300 多项高级功能,助您提升生产力、节省时间。立即点击此处,获取您最需要的功能……


Office Tab 为 Office 带来标签式界面,让您的工作更轻松

  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读
  • 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中。
  • 将您的工作效率提升 50%,每天减少数百次鼠标点击!

所有 Kutools 插件,一个安装程序

Kutools for Office 套件捆绑了适用于 Excel、Word、Outlook 和 PowerPoint 的插件以及 Office Tab Pro,非常适合需要跨多个 Office 应用高效协作的团队。

ExcelWordOutlookTabsPowerPoint
  • 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
  • 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
  • 协同效果更佳— 在多个 Office 应用中实现高效协同
  • 30 天全功能试用— 无需注册,无需信用卡
  • 超值之选— 比单独购买插件更省钱