Excel 教程:拆分文本、数字和日期单元格(拆分为多列)
使用 Excel 时,您可能需要将一个单元格中的内容拆分到多个单元格中,以满足不同需求。本教程分为三部分:拆分文本单元格、拆分数字单元格和拆分日期单元格,每部分均配有实用示例,助您轻松掌握各类拆分技巧,高效应对类似场景。
目录:[ 隐藏 】
1 拆分文本单元格
本部分汇总了将文本单元格拆分为多列时可能遇到的各种情况,并为您提供相应的解决方案。
示例 #1 分割单元格(按逗号、空格或其他分隔符)
要按特定分隔符(如逗号、空格、短横线等)将文本单元格拆分为多列,您可选用以下任一方法。
作为 Excel 内置功能,文本分列常用于拆分单元格。如下图所示,若要按逗号分割“文本字符串”列中的内容,只需按以下步骤使用“文本分列”功能即可。

1. 选择要按逗号拆分的列区域,单击数据 > 文本分列。

2. 在 “文本分列向导 – 第 1 步,共 3 步” 对话框中,保持选中分隔符号选项按钮,然后单击下一步按钮。

3. 在 “文本分列向导 – 第 2 步,共 3 步” 对话框中,根据需要选择文字分隔符(本例中仅勾选了)逗号复选框),然后单击下一步按钮。

4. 在最后一步对话框中,单击
按钮选择拆分后文本的输出单元格,然后单击完成按钮。

随后,所选区域中的文本将按逗号拆分,并分别填入不同的列中,如下图所示。

您可以在 Excel 中使用以下公式,按指定分隔符拆分单元格中的文本。
通用公式
=TRIM(MID(SUBSTITUTE(A1,delim,REPT(" ",LEN(A1))),(N-1)*LEN(A1)+1,LEN(A1)))
参数说明
接下来即可应用该公式。
1. 如下图所示,首先需在不同单元格中创建一个辅助行,并依次填入数字 1、2、3……
注:此处的 1、2、3……分别代表文本字符串中的第一个、第二个和第三个子字符串。

2. 选择数字 1 单元格下方的单元格,复制或输入以下公式,然后按 Enter 键,即可获得文本字符串的第一个子字符串。选中结果单元格,向右及向下拖动其自动填充柄,即可快速获取其余子字符串。参见下图:
=TRIM(MID(SUBSTITUTE($B5,",",REPT(" ",LEN($B5))),(D$4-1)*LEN($B5)+1,LEN($B5)))

注:公式中的“,”是用于拆分 B5 单元格中文本字符串的分隔符,您可根据实际需求随时调整。
在此,我们推荐使用 Kutools for Excel 的分割单元格功能强大,助您轻松按指定分隔符将文本拆分为独立的列或行。
1. 安装 Kutools for Excel 后,选择要拆分文本字符串的区域,然后单击 Kutools > 合并和拆分 > 分割单元格。

2. 在分割单元格对话框中,请按以下方式配置:

3. 在下一个分割单元格对话框中,选择用于输出子字符串的单元格,然后单击确定。

随后,子字符串将按照您在上述第 2 步中指定的方式拆分到不同的列或行中。
分割至多列:

分割至多行:

示例 #2 分割单元格(按固定长度)
要按固定长度拆分文本字符串,以下方法可助您轻松搞定。
Kutools for Excel 的文本分列功能提供固定宽度选项,可按固定长度轻松拆分所选单元格中的文本字符串。
如下图所示,若要将 B5:B9 区域中的文本每 3 个字符拆分为一列,请按以下步骤操作。

1. 请选择您希望拆分文本字符串的单元格。
2. 单击数据> 文本分列。
3. 在 “文本分列向导 – 第 1 步,共 3 步” 对话框中,选择固定宽度选项按钮,然后单击下一步。

4. 随后将弹出 “第 2 步,共 3 步” 对话框。在数据预览区域中,单击轴线上所需位置以创建断点线(带箭头的线)。创建完所有断点线后,单击下一步按钮继续。
本例中,我在文本字符串中每隔 3 个字符插入一条断点线。

5. 在最后一步向导中,选择用于输出拆分后文本的单元格,然后单击完成按钮。

现在,所选单元格中的文本字符串已按每 3 个字符进行拆分,如下图所示。

要在 Excel 中按固定长度分割单元格,您可以使用 Kutools for Excel 的分割单元格功能,轻松完成。
1. 请选择您要按固定长度拆分的文本字符串所在单元格,然后点击。Kutools > 合并和拆分 > 分割单元格。
2. 在分割单元格对话框中,需按以下方式配置。

3. 在下一个分割单元格对话框中,选择用于放置拆分后文本的单元格,然后单击确定。

随后,所选单元格中的文本字符串将根据指定长度拆分,并分别填入不同列中。
示例 #3 分割单元格(按特定单词)
如下图所示,若要按完整单词“sales”拆分 B5:B9 区域中的文本字符串,可使用本节提供的公式。

获取单元格中特定单词前的子字符串
利用基于 LEFT 和 FIND 函数的公式,轻松提取文本字符串中特定单词前的子字符串。
通用公式
=LEFT(A1,FIND("certain_word", A1)-1)
参数说明
1. 选择一个空白单元格,将下方公式复制或输入其中,然后按 Enter 键,即可获取指定单词前的子字符串。选中该结果单元格,向下拖动其自动填充柄,即可将公式轻松应用到其他单元格。
=LEFT(B5,FIND("sales",B5)-1)

获取单元格中某单词后的子字符串
在获取某单词前的子字符串后,您需要使用下方公式来获取该单词后的子字符串。
通用公式
=TRIM(MID(A1,SEARCH("certain_word",A1)+LEN("certain_word"),255))
参数说明
1. 请选择紧邻第一个结果单元格(D5)的空白单元格。
2. 将下方公式复制或输入到单元格中,然后按 Enter 选中该结果单元格,向下拖动其填充柄。自动填充柄,即可快速获取其他结果。
=TRIM(MID(B5,SEARCH("sales",B5)+LEN("sales"),255))

现在,您已根据完整单词将文本字符串拆分到不同的列中。
示例 #4 分割单元格按换行符拆分
本节演示了在 Excel 中按换行符拆分文本单元格的不同方法。

“文本分列”功能可用于在 Excel 中按换行符拆分单元格内容。操作步骤如下。
1. 请选择您希望按换行符拆分文本的单元格区域。
2. 单击数据> 文本分列。
3. 在 将文本分列向导 – 第 1 步,共 3 步 对话框中,选择分隔符号选项按钮,然后单击下一步;

4. 在 第 2 步,共 3 步 对话框中,取消勾选所有现有的分隔符选项,勾选其他复选框,然后按下 Ctrl+J 快捷键。此时,文本框中仅显示一个小点,且数据预览框中的文本已按换行符成功拆分。单击下一步按钮。

5. 在向导的最后一步,选择一个目标单元格用于输出拆分后的文本,然后单击。完成按钮。

随后,所选单元格中的文本将根据换行符拆分到不同的列中。
以下公式也可帮助您在 Excel 中分割单元格按换行符拆分。
沿用上述示例,拆分后您将得到三个子字符串,分别位于不同的列中。
获取第一个换行符前的子字符串
首先,我们可以使用基于 LEFT 和 SEARCH 函数的公式,提取单元格中第一个换行符前的子字符串。
通用公式
=LEFT(cell, SEARCH(CHAR(10),cell,1)-1)
参数说明
1. 请选择一个空白单元格(本例中为 D5),将下方公式复制或输入其中,然后按 Enter 键。选中结果单元格,向下拖动其自动填充柄,即可提取其他单元格中首个换行符前的子字符串。
=LEFT(B5, SEARCH(CHAR(10),B5,1)-1)

获取第一个和第二个换行符之间的子字符串
要提取单元格中第一个与第二个换行符之间的子字符串,以下公式可助您轻松实现。
通用公式
=MID(cell,SEARCH(CHAR(10),cell)+1,SEARCH(CHAR(10),cell,SEARCH(CHAR(10),cell)+1)-SEARCH(CHAR(10),cell)-1)
参数说明
1. 选择 D5 旁边的单元格(E5),将下方公式复制或输入其中,然后按 Enter 键。选中结果单元格,向下拖动其自动填充柄,即可获取其他单元格中第一个与第二个换行符之间的子字符串。
=MID(B5, SEARCH(CHAR(10),B5) + 1, SEARCH(CHAR(10),B5,SEARCH(CHAR(10),B5)+1) - SEARCH(CHAR(10),B5) - 1)

获取第二个换行符后的子字符串
第一步是使用下方公式,提取第二个换行符之后的子字符串。
通用公式
=RIGHT(cell,LEN(cell) - SEARCH(CHAR(10),cell, SEARCH(CHAR(10), cell) + 1))
参数说明
1. 请选择一个单元格(本例中为 F5),将下方公式复制或输入其中,然后按 Enter 键。选中结果单元格,向下拖动其自动填充柄,即可获取其他单元格中第二个换行符后的子字符串。
=RIGHT(B5,LEN(B5) - SEARCH(CHAR(10), B5, SEARCH(CHAR(10), B5) + 1))

本节提供了一段 VBA 代码,助您在 Excel 中轻松按换行符批量拆分所选单元格内的文本。
1. 按下 Alt+F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。
2. 在 Microsoft Visual Basic for Applications 窗口中,单击插入 > 模块,然后将下方 VBA 代码复制到代码窗口中。
VBA 代码:在 Excel 中分割单元格按换行符拆分
Sub ExtendOffice_SplitRangeTex()
'Updated by Extendoffice 20211116
Dim xStr() As String
Dim xRg As Range
Dim xCell As Range
Dim xI As Integer
Set xRg = Application.InputBox("Please select the range of cells where you want to split by line break:", "Kutools for Excel", "", , , , , 8)
If xRg Is Nothing Then Exit Sub
For xI = 1 To xRg.Count
Set xCell = xRg.Item(xI)
xStr = VBA.Split(xCell.Value, vbLf)
xCell.Resize(1, UBound(xStr) + 1).Offset(0, 1) = xStr
Next
End Sub 
3. 按下 F5 键运行代码后,会弹出一个 Kutools for Excel 对话框,您需选择要按换行符拆分的单元格区域,然后单击 OK 按钮。

随后,所选单元格中的文本将按换行符一次性拆分到不同列中。

此处,我们介绍一款便捷工具——分割单元格中的 Kutools for Excel。借助此工具,您只需几次点击即可批量按换行符拆分所选单元格中的文本。
1. 选择要按换行符拆分文本的单元格区域。
2. 单击 Kutools > 合并和拆分 > 分割单元格,即可启用该功能。
3. 在分割单元格对话框中,您需要进行以下设置。

4. 在弹出的分割单元格对话框中,选择一个空白单元格用于放置拆分后的文本,然后单击 OK。

随后,所选单元格中的文本将根据换行符拆分到不同列中,如下方截图所示。

Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
示例 #5 分割单元格仅按第一个或最后一个分隔符拆分
有时,您可能只需根据第一个或最后一个分隔符将单元格拆分为两部分,不妨试试以下公式。
如下方截图所示,要按第一个空格将 B5:B9 区域中每个单元格拆分为两部分,您需要应用两个公式。

拆分第一个空格前的子字符串
要拆分第一个空格前的子字符串,您可以使用基于 LEFT 函数和 FIND 函数的公式。
通用公式
=LEFT(cell,FIND("delimiter",cell)-1)
参数说明
1. 请选择一个单元格(本例中为 D5)用于输出子字符串,将下方公式复制或输入其中,然后按 Enter 键。选中结果单元格,向下拖动其自动填充柄,即可快速获取其他单元格的子字符串。
=LEFT(B5,FIND(" ",B5)-1)

拆分第一个空格后的子字符串
然后应用以下公式,即可提取单元格中第一个空格之后的子字符串。
通用公式
=RIGHT(cell,LEN(cell)-FIND("delimiter",cell))
参数说明
1. 将以下公式复制或输入到单元格 E5 中,然后按 Enter 键。Enter 键获取结果。选中该结果单元格,向下拖动其自动填充柄,即可快速获取其他单元格中最后一个空格之后的子字符串。
=RIGHT(B5,LEN(B5)-FIND(" ",B5))

注意在公式中,您可以根据需要将单元格引用替换为文本字符串和分隔符。
要将单元格区域(B5:B9)中的文本按最后一个空格拆分为两部分(如截图所示),本节提供的两个公式可帮助您完成此操作。

获取最后一个分隔符左侧的文本
要获取单元格中最后一个分隔符左侧的文本,您可使用以下公式。
通用公式
=LEFT(B5,SEARCH("^",SUBSTITUTE(cell,"delimiter","^",LEN(cell)-LEN(SUBSTITUTE(cell,"delimiter",""))))-1)
参数说明
1. 选择一个用于放置左侧子字符串的单元格,复制或输入以下公式,然后按 Enter 选中结果单元格,向下拖动其填充柄。自动填充柄,即可将公式应用到其他单元格。
=LEFT(B5,SEARCH("^",SUBSTITUTE(B5," ","^",LEN(B5)-LEN(SUBSTITUTE(B5," ",""))))-1)

获取最后一个分隔符右侧的文本
现在,我们需要在此例中提取最后一个空格右侧的文本。
通用公式
=TRIM(RIGHT(SUBSTITUTE(cell,"delimiter",REPT("delimiter",LEN(cell))),LEN(cell)))
参数说明
1. 选择一个用于放置右侧子字符串的单元格,复制或输入以下公式,然后按 Enter 键。选中结果单元格,向下拖动填充柄,即可将公式快速应用到其他单元格。
=TRIM(RIGHT(SUBSTITUTE(B5," ",REPT(" ",LEN(B5))),LEN(B5)))

注意在公式中,您可以根据需要将单元格引用替换为文本字符串及分隔符。
示例 #6 按分割单元格大写字母
本节介绍一个用户自定义函数,可按大写字母智能拆分单元格中的单词。

1. 按下 Alt+F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。
2. 在 Microsoft Visual Basic for Applications 窗口中,单击插入> 模块,然后将以下 VBA 代码复制到代码窗口中。
VBA 代码:在 Excel 中按分割单元格大写字母
Function GetName(s As String, Num As Long) As String
'Updated by Extendoffice 20211116
With CreateObject("VBSCript.RegExp")
.Global = True
.Pattern = "[A-Z][a-z]+|[A-Z]"
GetName = .Execute(s).Item(Num - 1)
End With
End Function 3. 按 Alt+Q 键关闭 Microsoft Visual Basic for Applications 窗口。
4. 选择一个单元格(本例中为 D5),用于输出第一个大写字母左侧的单词,输入以下公式后按 Enter 键。选中该结果单元格,向右再向下拖动其自动填充柄,即可获取其他单词。
=IFERROR(GetName($B5,COLUMNS($D:D)),"")

注意在代码中,$B5 是您要拆分的单元格,$D:D 是结果所在列,请根据实际数据进行调整。
示例 #7 拆分单元格中的分割姓名
假设您有一个工作表,其中包含一列全名,希望将全名拆分为单独的列——例如,将名字和姓氏从全名中分离出来,或进一步拆分为名字、中间名和姓氏。本节提供了详细步骤,助您轻松解决这些问题。
如下面的截图所示,名字、中间名和姓氏由单个空格分隔。若要仅从全名中拆分出名字和姓氏并将它们放入不同列中,您可以采用以下任一方法。

您需要分别使用两个公式,将全名拆分为名字和姓氏。
从全名中拆分出名字
您可以使用基于 LEFT 和 SEARCH 函数的公式,轻松从全名中提取名字。
通用公式
=LEFT(cell, SEARCH(" ", cell) - 1)
1. 选择一个单元格用于输出名字。
2. 将以下公式复制或输入其中,然后按 Enter 键。选中该结果单元格,向下拖动其自动填充柄,从其他全名中拆分出名字。
=LEFT(B5, SEARCH(" ", B5) - 1)

现在您已从限定区域单元格区域中的全名拆分出所有名字,接下来请应用以下公式拆分姓氏。
从全名中拆分出姓氏
通用公式
=RIGHT(cell, LEN(cell) - SEARCH("^", SUBSTITUTE(cell," ", "^", LEN(cell) - LEN(SUBSTITUTE(cell, " ", "")))))
1. 请选择紧邻名称单元格的任意一个单元格。
2. 将以下公式复制或输入其中,然后按 Enter 键。选中结果单元格,向下拖动其自动填充柄,即可从其他全名中提取姓氏。
=RIGHT(B5, LEN(B5) - SEARCH("^", SUBSTITUTE(B5," ", "^", LEN(B5) - LEN(SUBSTITUTE(B5, " ", "")))))

注意:公式中的 B5 是您要拆分的全名单元格,您可以根据需要随时修改。
Kutools for Excel 的分割姓名功能,助您轻松应对公式难题!只需几次点击,即可将全名快速拆分为名字和姓氏。
1. 选择全名单元格区域,单击 Kutools> 合并和拆分> 分割姓名。

2. 在分割姓名对话框中,仅勾选名字和姓氏框(位于)分割类型部分),然后单击 OK。
提示:所选区域将显示在分割区域框中,您可根据需要随时修改。

3. 随后将弹出另一个对话框。分割姓名对话框,选择目标单元格并单击 OK。

随后,所选单元格中的全名将批量拆分为名字和姓氏,如下方截图所示。

Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
如下面的截图所示,有一列全名,其中名字、中间名和姓氏以单个空格分隔。若要将全名拆分为名字、中间名和姓氏,并分别填入不同列中,以下方法可助您轻松实现。

Excel 内置的“文本分列”功能可轻松帮您将全名拆分为名字、中间名和姓氏。
您可以按照上述步骤应用“文本分列”功能。
注意:在 3 步向导的第 2 步中,仅勾选空格复选框。
您还可以在 Excel 中使用公式,轻松将全名拆分为名字、中间名和姓氏。
用于拆分全名的通用公式
拆分名字
=LEFT(cell,SEARCH(" ", cell)-1)
拆分中间名
=MID(cell, SEARCH(" ", cell) + 1, SEARCH(" ", cell, SEARCH(" ", cell)+1) - SEARCH(" ", cell)-1)
拆分姓氏
=RIGHT(cell,LEN(cell) - SEARCH(" ",cell, SEARCH(" ",cell,1)+1))
随后,将这些公式分别应用于不同的单元格,即可轻松提取名字、中间名和姓氏。
1. 在单元格 D5 中输入以下公式,然后按 Enter 键。Enter 选中该结果单元格,向下拖动其自动填充柄,即可快速获取其他全名对应的名字。
=LEFT(B5,SEARCH(" ", B5)-1)

2. 在单元格 E5 中输入以下公式,然后按 Enter 键以获取第一个中间名。选择结果单元格,向下拖动其自动填充柄以获取其他中间名。
=MID(B5, SEARCH(" ", B5) + 1, SEARCH(" ", B5, SEARCH(" ", B5)+1) - SEARCH(" ", B5)-1)

3. 要获取姓氏,请在单元格 F5 中输入以下公式,然后按 Enter,再选中结果单元格,并将自动填充柄拖动至所需单元格。
=RIGHT(B5,LEN(B5) - SEARCH(" ",B5, SEARCH(" ",B5,1)+1))

Kutools for Excel 的分割姓名该功能让您只需轻点几下,即可一键将全名智能拆分为名字、中间名和姓氏。
1. 选择要拆分的全名单元格,然后单击 Kutools> 合并和拆分> 分割姓名。
2. 在分割姓名对话框中,您需按以下方式配置。

3. 在弹出的分割姓名对话框中,选择一个目标单元格用于输出拆分后的文本,然后单击 OK。请参见下方演示。

Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
示例 #8 拆分单元格中的拆分为文本和数字
假设有一列包含混合了文本和数字的字符串(如下方截图所示),若要将其中的文本和数字分别提取到不同的列中,我们为您提供四种方法。

使用以下公式,您可以将一个单元格中的拆分为文本和数字拆分到两个独立的单元格中。
通用公式
从单元格中提取文本
=LEFT(cell,MIN(FIND({0,1,2,3,4,5,6,7,8,9},cell&"0123456789"))-1)
从单元格中提取数字
=RIGHT(cell,LEN(B5)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},cell&"0123456789"))+1)
然后在不同的单元格中分别应用这两个公式,即可将内容拆分为文本和数字。
1. 请选择一个空白单元格,用于放置列表中第一个文本字符串,然后复制或输入以下公式并按 Enter 键。选中结果单元格,向下拖动其自动填充柄,即可获取列表中其他文本字符串的对应结果。
=LEFT(B5,MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&"0123456789"))-1)

2. 选择第一个结果单元格(D5)右侧的单元格(E5),复制或输入以下公式,然后按 Enter。选中结果单元格,向下拖动其自动填充柄,即可为列表中的其他文本字符串生成对应的数字。
=RIGHT(B5,LEN(B5)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&"0123456789"))+1)

使用快速填充(Flash Fill)拆分拆分为文本和数字(适用于 2013 及更高版本)
如果您使用的是 Excel 2013 或更高版本,可以使用内置的快速填充功能,将一个单元格中的文本和数字快速拆分到两列中。
注意要让快速填充功能正常运作,结果列必须紧邻原文本字符串所在的列。例如,如果原文本字符串位于 B 列,那么拆分后的文本和数字应分别放在 C 列和 D 列。请参见截图:

1. 在单元格 C5 中手动输入单元格 D5 的文本内容。
2. 继续在单元格 C6 中输入第二个文本字符串,即单元格 D6 中的内容。

3. 选中激活单元格 C7,单击数据> 快速填充。

随后,其他文本字符串的文本将自动填充到单元格中,如下方截图所示。

4. 重复步骤 1 至 3,以在 D 列中获取数字。

注意事项:

如果列表中的文本字符串不规则,上述两种方法可能会返回错误结果,如下方截图所示。

此处,我们为您介绍一个自定义函数,无论数字在文本字符串中的位置如何,都能轻松将单元格内容拆分为两列——一列为纯文本,另一列为数字。请参见下方截图:

1. 按下 Alt+F11 键。
2. 在打开的 Microsoft Visual Basic for Applications 窗口中,单击插入 > 模块,然后将下方的 VBA 代码复制到代码窗口中。
VBA 代码:将拆分为文本和数字从一个单元格拆分到两列中
Public Function SplitText(pWorkRng As Range, pIsNumber As Boolean) As String
'Update by Extendoffice 20211105
Dim xLen As Long
Dim xStr As String
xLen = VBA.Len(pWorkRng.Value)
For i = 1 To xLen
xStr = VBA.Mid(pWorkRng.Value, i, 1)
If ((VBA.IsNumeric(xStr) And pIsNumber) Or (Not (VBA.IsNumeric(xStr)) And Not (pIsNumber))) Then
SplitText = SplitText + xStr
End If
Next
End Function 
3. 按下 Alt+Q 键,即可关闭 Microsoft Visual Basic for Applications 窗口。
4. 选择一个单元格用于输出首个文本字符串,输入以下公式,然后按 Enter 键。选中该结果单元格,向下拖动其自动填充柄,即可获取同一列表中其他文本字符串的结果。
=SplitText(B5,FALSE)

5. 请选择第一个文本结果单元格旁边的单元格作为输出位置,输入以下公式,然后按 Enter 键。选中该结果单元格,向下拖动自动填充柄,即可获取其他文本字符串对应的数字。
=SplitText(B5,TRUE)

在此,我们推荐一种最简单的方法,可一次性将单元格中的文本和数字分别拆分到两列中。Kutools for Excel 的分割单元格功能,只需几次点击即可轻松搞定!
1. 选择要将拆分为文本和数字拆分到两列中的文本字符串单元格。
2. 单击 Kutools > 合并和拆分 > 分割单元格。
3. 在分割单元格对话框中,您需要进行以下设置。
按钮以根据需要选择新区域;
4. 在接下来的分割单元格对话框中,选择一个用于输出拆分结果的单元格(将文本和数字分别拆分),然后单击 OK 按钮。
随后,您将看到所选单元格中的内容已一次性拆分为文本和数字,并分别填入两列中,如下方截图所示。

Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
2. 拆分数字单元格
本部分介绍如何在两种场景下拆分数字单元格:一是将多位数拆分为单个数字,二是在小数点处拆分数字,以分离整数部分与小数部分。
示例 #1:按数字分割单元格
如果您想将一个多数字拆分为多个列中的单个数字,请尝试以下任一方法。

以下公式可助您将一个数字拆分为单个数字,并分别填入不同列中。
通用公式
=MID($A1, COLUMNS($A$1:A$1), 1)
参数
1. 选择一个空白单元格用于输出第一个数字,输入以下公式,然后按 Enter 键。
=MID($B3, COLUMNS($B$3:B$3), 1)
2. 选中该结果单元格,向右拖动其自动填充柄至其他单元格,即可快速获取其余数字;随后保持所有结果单元格处于选中状态,再向下拖动自动填充柄,轻松获得其他数字的各个位数。

注意:在此公式中,B3 是包含要拆分为单个数字的数值所在的单元格,您可根据需要自行调整。
以下 VBA 代码还能帮您在 Excel 中将单元格内的数字拆分为单个数字,操作步骤如下。
1. 按下 Alt+F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。
2. 在 Microsoft Visual Basic for Applications 窗口中,单击插入 > 模块,然后将下方的 VBA 代码复制到代码窗口中。
VBA 代码:在 Excel 中将数字拆分为单个数字
Sub SplitNumberIntoDigits()
'Updateby Extendoffice 2021118
Dim Rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "Kutools for Excel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
xInt = InputRng.Row
Application.ScreenUpdating = False
For Each Rng In InputRng
xValue = Rng.Value
xRow = (Rng.Row - xInt) + 1
For I = 1 To VBA.Len(xValue)
OutRng.Cells(xRow, I).Value = VBA.Mid(xValue, I, 1)
Next
Next
Application.ScreenUpdating = True
End Sub 
3. 按 F5 键运行代码后,将弹出一个 Kutools for Excel 对话框,您需选择要拆分的数字单元格区域,然后单击确定按钮。

4. 第二个 Kutools for Excel 对话框弹出后,您需选择一个用于输出单个数字的单元格,然后单击确定。

注意:此代码也可以将单词拆分为单个字母。
随后,所选单元格中的数字将被拆分为单个数字,并分别放置在不同列中。

Kutools for Excel 的分割单元格功能是一款实用工具,可帮助您在 Excel 中轻松将数字拆分为单个数字。
1. 安装 Kutools for Excel 后,选择要拆分的数字单元格区域,单击 Kutools > 合并和拆分 > 分割单元格。
2. 在分割单元格对话框中,进行以下设置。
按钮以根据需要更改区域;
3. 在打开的分割单元格对话框中,选择一个空白单元格用于输出数字,然后点击确定按钮。

随后,所选单元格中的数字将一次性拆分为单个数字。
Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
示例 #2 在小数点处分割数字
本节为您介绍几种在 Excel 中将数字拆分为整数部分和小数部分的实用方法。

TRUNC 函数可用于在 Excel 中按小数点截断数字,操作步骤如下。
通用公式
获取整数部分
=TRUNC(A1)
获取小数部分
=A 1-TRUNC(A1)
参数
现在,您可以应用这两个公式在 Excel 中按小数点将限定区域单元格区域中的数字进行分割。
1. 选择一个单元格用于放置第一个数字的整数部分,输入以下公式并按 Enter 键。选中结果单元格,向下拖动其自动填充句柄,即可快速获取其他数字的整数部分。
=TRUNC(B5)

2. 在首个结果单元格旁选择一个单元格用于放置小数部分,输入以下公式后按 Enter。Enter 键。选中该结果单元格,向下拖动其自动填充句柄,即可快速获取其他数字单元格的小数部分。
=B 5-TRUNC(B5)

您可以使用文本分列功能在 Excel 中按小数点分割数字。
1. 选择要按小数点分割的数字单元格区域,然后单击数据> 文本分列。
2. 在 将文本分列向导 – 第 1 步,共 3 步 对话框中,选择分隔符号选项按钮,然后单击下一步按钮。

3. 在 第 2 步,共 3 步 对话框中,仅勾选其他复选框,在文本框中输入一个点号,然后单击下一步按钮。

4. 在 第 3 步,共 3 步 对话框中,单击
按钮,选择一个目标单元格以输出分割后的整数和小数部分,最后单击完成按钮。参见截图:

随后,您可以看到所选单元格中的整数部分和小数部分已被分割,如下面的截图所示。但小数部分会丢失负号,而用户可能需要保留该符号。

使用快速填充功能在小数点处分割数字(适用于 2013 及更高版本)
在上文示例中,我们介绍了使用快速填充功能将单元格内容拆分为文本和数字;此处我们将采用相同方法,按小数点分割数字。
1. 输入几个示例。本例中,我们在 C5 单元格中输入 B5 的整数部分,在 C6 单元格中输入 B6 的整数部分。参见截图:
注意:对于负数,请勿忘记同时输入负号。

3. 选择包含示例的列中要填充的单元格区域,转到数据选项卡,点击快速填充。

随后,指定数字单元格中的整数部分将被提取出来,如下面的截图所示。

4. 重复上述步骤,从相同的数字单元格中提取小数部分。

3. 拆分日期单元格
另一种常见情况是拆分日期单元格。如果您需要将日期单元格拆分为独立的日、月和年,或拆分为独立的日期与时间,请根据实际需求选用以下解决方案。
示例 #1 将日期单元格拆分为独立的日、月和年
假设您在 B5:B9 区域中有一系列日期,希望将每个日期拆分为三个独立的列,分别显示日、月和年。以下是三种实用方法,助您轻松实现日期拆分。

在 Excel 中,您可以使用基于 DATE 函数、MONTH 函数和 YEAR 函数的三个公式,轻松将日期拆分为独立的日、月和年。
通用公式
=DATE(A1)
=MONTH(A1)
=YEAR(A1)
参数
1. 创建三列,分别用于放置独立的日、月和年。
2. 在“日”列的第一个单元格中,输入以下公式并按 Enter 键,以获取第一个日期单元格(B5)的日。选中该结果单元格,向下拖动其自动填充句柄,即可获得其他日期单元格的日。
=DAY(B5)

3. 按照步骤 1 中的相同操作,在月和年列中应用以下公式,即可从日期单元格中分别提取出独立的月份和年份。
获取日期的月份
=MONTH(B5)

获取日期的年份
=YEAR(B5)

您可以 按照上述步骤使用“文本分列”功能在 Excel 中将日期单元格拆分为独立的日、月和年。
注意:在 步骤 2(位于 3 中) 对话框中,仅勾选其他复选框,并在文本框中输入/符号。

以下演示展示了如何使用 Kutools for Excel 的分割单元格功能,将日期拆分为独立的月、日和年。
此功能可帮助您仅需几次点击即可批量拆分日期。

Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
示例 #2 拆分单元格中的日期和时间
假设 B5:B9 区域包含一列日期时间数据,您希望将其中的日期和时间分别拆分到不同列中,本节将为您介绍多种高效实现方法。

您可以应用以下公式,在 Excel 中将日期和时间拆分到不同的列中。
1. 准备两列,分别用于存放日期和时间。
2. 需将日期列的单元格格式设置为日期格式,并将时间列的单元格格式设置为时间格式。


3. 选择日期列中的第一个单元格,输入以下公式并按 Enter 键以获取 B5 的日期。选中该结果单元格,向下拖动自动填充柄以获取其余日期。
=INT(B5)

4. 在时间列中应用以下公式,以提取 B5:B9 区域中的时间。
=B 5-D5

使用 Flash Fill 拆分单元格中的日期和时间(适用于 2013 及更高版本)
如果您使用的是 Excel 2013 或更高版本,可借助内置的“快速填充”功能,轻松将日期和时间拆分到不同列中。
1. 创建“日期”和“时间”列,并输入几个期望的输出示例。在日期列中,在 C5 输入 B5 的日期,在 C6 输入 B6 的日期;在时间列中,在 D5 输入 B5 的时间,在 D6 输入 B6 的时间。参见下图:

2. 选中要填充的“日期”列(包括已输入的示例),依次点击数据>Flash Fill。
3. 选中要填充的“时间”列(包括已输入的示例),然后同样启用 Flash Fill 功能。随后,B5:B9 中的日期和时间将如以下演示所示,拆分到独立的列中。

现在,您已掌握在 Excel 中根据不同场景使用不同方法分割单元格的技巧。您可以根据具体需求选择最适合的方法。
最佳办公效率工具
| 🤖 | KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格且不丢失数据 | 不使用公式的四舍五入…… | |
| 高级 LOOKUP:多条件 VLookup | 多值 VLookup | 跨多工作表 VLookup | 模糊查找…… | |
| 高级下拉列表:快速创建下拉列表 | 级联下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列…… | |
| 特色功能:网格聚焦 | 设计视图 |增强编辑栏 | 工作簿和表管理器 | 资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表发送邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线……) ...... | |
| 精选 15 工具集:12 文本工具(添加文本,删除特定字符,……)| 50+ 图表 类型(甘特图,……)| 40+ 实用公式(基于生日计算年龄,……)| 19 插入工具(插入二维码,从路径插入图片,……)| 12 转换工具(小写金额转大写,汇率转换,……)| 7 合并和拆分工具(高级合并行,分割单元格,……)|……更多 |
使用 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 应用高效协作的团队。
- 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
- 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
- 协同效果更佳— 在多个 Office 应用中实现高效协同
- 30 天全功能试用— 无需注册,无需信用卡
- 超值之选— 比单独购买插件更省钱