Excel教程:拆分文本、数字和日期单元格(分成多列)
使用 Excel 时,出于某些目的,您可能需要将一个单元格中的文本拆分为多个单元格。 本教程分为三个部分:拆分文本单元格、拆分数字单元格和拆分日期单元格。 每个部分都提供了不同的示例,以帮助您了解遇到相同问题时如何处理拆分作业。
目录: [ 隐藏 ]
1 拆分文本单元格
这部分收集了您在将文本单元格拆分为多列时会遇到的情况,并为您提供相应的方法。
Example #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单元格下的一个单元格,将下面的公式复制或输入其中,然后按 输入 获取文本字符串的第一个子字符串的键。 选择结果单元格,拖动其 自动填充句柄 向右和向下以获取其他子字符串。 看截图:
=TRIM(MID(SUBSTITUTE($B5,",",REPT(" ",LEN($B5))),(D$4-1)*LEN($B5)+1,LEN($B5)))
备注: 在公式, ”,” 是用于分割 B5 中文本字符串的分隔符。 您可以根据需要更改它们。
在这里推荐 Kutools for Excel“ 分裂细胞 功能可帮助您通过 Excel 中的某个分隔符轻松地将单元格拆分为单独的列或行。
1.安装后 Kutools for Excel,选择要拆分文本字符串的范围,然后单击 库工具 > 合并与拆分 > 分裂细胞.
2.在 分裂细胞 对话框,您需要配置如下。
3.在下 分裂细胞 对话框,选择要输出子串的单元格,然后单击 OK.
然后根据您在上面的步骤 2 中指定的内容将子字符串拆分为不同的列或行。
拆分为列:
拆分为行:
Example #2 按一定长度拆分单元格
要将文本字符串按一定长度拆分,以下方法可以帮到您。
文本到列 功能提供了一个 固定宽度 选项可帮助您在 Excel 中按特定长度拆分选定单元格中的文本字符串。
如下图所示,要将 B5:B9 范围内的文本每 3 个字符拆分为几列,您可以执行以下操作来完成。
1. 选择要拆分文本字符串的单元格。
2。 点击 时间 > 文本到列.
3.在 将文本转换为列向导 - 第 1 步(共 3 步) 对话框中,选择 固定宽度 单选按钮并单击 下一页.
4.然后 步骤2 弹出对话框。 在里面 资料预览 部分,单击轴上的所需位置以创建中断线(带箭头的线)。 创建所有中断线后,单击 下一页 按钮继续。
在这种情况下,我为文本字符串中的每 3 个字符创建一个分隔线。
5. 在最后一步向导中,选择一个单元格来输出分离的文本,然后单击 完成 按钮。
现在所选单元格中的文本字符串每 3 个字符拆分一次,如下面的屏幕截图所示。
要在 Excel 中按一定长度拆分单元格,您可以应用 分裂细胞 的特点 Kutools for Excel 轻松完成。
1.选择要按一定长度拆分的文本字符串单元格,单击 库工具 > 合并与拆分 > 分裂细胞.
2.在 分裂细胞 对话框,您需要配置如下。
3.在下 分裂细胞 对话框,选择一个单元格放置拆分文本,然后单击 OK.
然后将所选单元格中的文本字符串按一定长度拆分并放置在不同的列中。
Example #3 按某个单词拆分单元格
如下面的屏幕截图所示,要将 B5:B9 范围内的文本字符串拆分为整个单词“sales”,您可以应用本节中提供的公式。
获取单元格中某个单词之前的子字符串
应用基于 LEFT 和 FIND 函数的公式可以帮助获取文本字符串中某个单词之前的子字符串。
通用公式
=LEFT(A1,FIND("certain_word", A1)-1)
参数
1.选择一个空白单元格,复制或输入下面的公式,然后按 输入 获取特定单词之前的子字符串的键。 选择这个结果单元格,然后拖动它的 自动填充句柄 将该公式应用于其他单元格。
=LEFT(B5,FIND("sales",B5)-1)
获取单元格中某个单词后的子字符串
在获得单词之前的子字符串后,您需要应用以下公式来获得它之后的子字符串。
通用公式
=TRIM(MID(A1,SEARCH("certain_word",A1)+LEN("certain_word"),255))
参数
1. 选择第一个结果单元格 (D5) 旁边的空白单元格。
2. 复制或输入以下公式,然后按 输入 钥匙。 选择这个结果单元格,拖动它的 自动填充句柄 下来以获得其他结果。
=TRIM(MID(B5,SEARCH("sales",B5)+LEN("sales"),255))
现在您已按整个单词将文本字符串拆分为不同的列。
Example #4 通过换行符拆分单元格
本节演示了帮助您在 Excel 中按换行符拆分文本单元格的不同方法。
文本到列功能可应用于在 Excel 中按换行符拆分单元格。 您可以执行以下操作。
1. 选择要按换行符拆分文本的单元格范围。
2。 点击 时间 > 文本到列.
3.在 将文本转换为列向导–第1步,共3步 对话框中选择 分隔 单选按钮,然后单击 下一页;
4.在 步骤2 对话框,取消选中任何现有的 定界符 选择,检查 其他名称 复选框,然后按 按Ctrl + J 捷径。 可以看到文本框中只显示了一个小点,然后在 资料预览 框中,文本由换行符分割。 点击 下一页 按钮。
5. 在最后一步向导中,选择要输出分离文本的目标单元格,然后单击 完成 按钮。
然后将所选单元格中的文本按换行符拆分为不同的列。
以下公式也有助于在 Excel 中按换行符拆分单元格。
使用与上面相同的示例,拆分后,您将在不同的列中获得三个子字符串。
获取第一个换行符前的子串
首先,我们可以应用一个基于 左 和 搜索 函数在单元格中的第一个换行符之前拆分子字符串。
通用公式
=LEFT(cell, SEARCH(CHAR(10),cell,1)-1)
参数
1.选择一个空白单元格(在这种情况下为D5),将以下公式复制或输入其中,然后按 输入 钥匙。 选择结果单元格并拖动其 自动填充句柄 在其他单元格的第一个换行符之前获取子字符串。
=左(B5,搜索(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),复制或输入以下公式,然后按 输入 钥匙。 选择结果单元格并拖动其 自动填充句柄 向下获取其他单元格的第一个和第二个换行符之间的子字符串。
=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),将以下公式复制或输入其中,然后按 输入 钥匙。 选择结果单元格并向下拖动其自动填充句柄以获取其他单元格第二个换行符后的子字符串。
=RIGHT(B5,LEN(B5) - 搜索(CHAR(10), B5, 搜索(CHAR(10), B5) + 1))
本节提供了一个 VBA 代码,可帮助您在 Excel 中通过换行符轻松拆分选定单元格中的文本。
1。 按 其他 + F11 键打开 Microsoft Visual Basic应用程序 窗口。
2.在 Microsoft Visual Basic应用程序 窗口中,单击 插页 > 模块. 然后将下面的 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。 点击 库工具 > 合并与拆分 > 分裂细胞 启用该功能。
3.在 分裂细胞 对话框,需要进行如下设置。
4.在接下来弹出 分裂细胞 对话框,选择一个空白单元格放置分离的文本,然后单击 OK.
然后所选单元格中的文本按换行符拆分为不同的列,如下面的屏幕截图所示。
如果您想免费试用(30天)此实用程序, 请点击下载,然后按照上述步骤进行操作。
Example #5 仅按第一个或最后一个分隔符拆分单元格
有时,您可能需要将单元格分成两部分,仅参考第一个或最后一个分隔符,您可以尝试以下公式。
如下面的屏幕截图所示,要将 B5:B9 范围内的每个单元格按第一个空格拆分为两部分,您需要应用两个公式。
在第一个空格之前拆分子字符串
要在第一个空格之前拆分子字符串,您可以使用基于 LEFT 函数和 FIND 函数的公式。
通用公式
=LEFT(cell,FIND("delimiter",cell)-1)
参数
1.选择一个单元格(在这种情况下为D5)输出子字符串,将下面的公式复制或输入其中,然后按 输入 键。 选择结果单元格,然后拖动其 自动填充句柄 向下获取其他单元格的子串。
=LEFT(B5,FIND(" ",B5)-1)
在第一个空格后拆分子字符串
然后应用下面的公式来获取单元格中第一个空格之后的子字符串。
通用公式
=RIGHT(cell,LEN(cell)-FIND("delimiter",cell))
参数
1.复制或输入以下公式到E5单元格中,然后按 输入 得到结果的关键。 选择此结果单元格并拖动其 自动填充句柄 向下获取其他单元格最后一个空格之后的子字符串。
=RIGHT(B5,LEN(B5)-FIND(" ",B5))
备注:在公式中,您可以根据需要更改对文本字符串和分隔符的单元格引用。
要将单元格范围 (B5:B9) 中的文本按屏幕截图所示的最后一个空格拆分为两部分,本节中提供的两个公式可以帮助您完成。
获取最后一个分隔符左边的文本
要获取单元格中最后一个分隔符左侧的文本,您可以应用以下公式。
通用公式
=LEFT(B5,SEARCH("^",SUBSTITUTE(cell,"delimiter","^",LEN(cell)-LEN(SUBSTITUTE(cell,"delimiter",""))))-1)
参数
1.选择一个单元格放置左子串,复制或输入下面的公式,然后按 输入 钥匙。 选择结果单元格并拖动其 自动填充句柄 将该公式应用于其他单元格。
=LEFT(B5,SEARCH("^",SUBSTITUTE(B5," ","^",LEN(B5)-LEN(SUBSTITUTE(B5," ",""))))-1)
获取最后一个分隔符右侧的文本
在这种情况下,现在我们需要将文本放在最后一个空格的右侧。
通用公式
=TRIM(RIGHT(SUBSTITUTE(cell,"delimiter",REPT("delimiter",LEN(cell))),LEN(cell)))
参数
1.选择一个单元格放置右边的子串,复制或输入下面的公式,然后按 输入 钥匙。 选择结果单元格并向下拖动其自动填充手柄以将公式应用到其他单元格。
=TRIM(RIGHT(SUBSTITUTE(B5," ",REPT(" ",LEN(B5))),LEN(B5)))
备注:在公式中,您可以根据需要更改对文本字符串和分隔符的单元格引用。
Example #6 按大写字母拆分单元格
本节介绍一个用户定义的函数,将单元格中的单词按大写字母拆分。
1。 按 其他 + F11 键打开 Microsoft Visual Basic应用程序 窗口。
2.在 Microsoft Visual Basic应用程序 窗口中,单击 插页 > 模块,然后将下面的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。 按 其他 + Q 关闭键 Microsoft Visual Basic应用程序 窗口。
4.选择一个单元格(本例中为D5)输出第一个大写字母左边的单词,在其中输入以下公式并按 输入 键。 选择此结果单元格并拖动其 自动填充句柄 马上下来得到其他的话。
=IFERROR(GetName($B5,COLUMNS($D:D)),"")
备注: 代码中,$B5是你要拆分的单元格,$D:D是结果单元格所在的列。 请根据您自己的数据更改它们。
Example #7 在单元格中拆分名称
假设您有一个包含一列全名的工作表,并且想要将全名拆分为单独的列,例如从全名中拆分名和姓,或从全名中拆分名、中间名或姓氏。 本节列出了帮助您解决这些问题的详细步骤。
如下图所示,名字、中间名和姓氏之间用一个空格分隔,要从全名中只拆分名字和姓氏并将它们放在不同的列中,您可以应用其中一个以下方法。
您需要分别应用两个公式才能将全名拆分为名字和姓氏。
从全名中拆分名字
您可以应用基于 LEFT 和 SEARCH 函数的公式将名字与全名分开。
通用公式
=LEFT(cell, SEARCH(" ", cell) - 1)
1. 选择一个单元格以输出名字。
2. 复制或输入以下公式,然后按 输入 键。 选择此结果单元格并拖动其 自动填充句柄 down 将名字与其他全名分开。
=LEFT(B5, SEARCH(" ", B5) - 1)
现在您已经从指定单元格范围内的全名中拆分了所有名字,继续应用以下公式来拆分姓氏。
从全名中拆分姓氏
通用公式
=RIGHT(cell, LEN(cell) - SEARCH("^", SUBSTITUTE(cell," ", "^", LEN(cell) - LEN(SUBSTITUTE(cell, " ", "")))))
1. 选择名字单元格旁边的单元格。
2. 复制或输入以下公式,然后按 输入 钥匙。 选择此结果单元格并向下拖动其自动填充句柄以从其他全名中获取姓氏。
=RIGHT(B5, LEN(B5) - SEARCH("^", SUBSTITUTE(B5," ", "^", LEN(B5) - LEN(SUBSTITUTE(B5, " ", "")))))
备注:在公式中,B5是你要拆分的全名单元格。 您可以根据需要更改它。
许多 Excel 用户很难记住公式。 这里推荐 分割名称 的特点 Kutools for Excel. 使用此功能,只需单击几下,您就可以轻松地将全名拆分为名字和姓氏。
1.选择全名单元格范围,点击 库工具 > 合并与拆分 > 分割名称.
2.在 分割名称 对话框中,仅选中 名字 和 姓氏 框 分割类型 部分,然后单击 OK.
Tips:所选范围显示在 分割范围 框,您可以根据需要更改它。
3.然后另一个 分割名称 弹出对话框,选择目标单元格,点击 OK.
然后所选单元格中的全名将被批量拆分为名字和姓氏,如下面的屏幕截图所示。
如果您想免费试用(30天)此实用程序, 请点击下载,然后按照上述步骤进行操作。
如下面的屏幕截图所示,有一个全名列,名字、中间名和姓氏由一个空格分隔。 要将全名拆分为名字、中间名和姓氏,并将它们放在不同的列中,以下方法可以帮助您。
内置功能 - 文本到列可以帮助您在 Excel 中轻松地将全名拆分为名字、中间名和姓氏。
您还可以 按照上面提到的步骤应用文本到列功能.
备注: 在 Step 2 of 3 向导中,只勾选 太空 框。
您还可以应用公式在 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 中,输入以下公式并按 输入 钥匙。 选择此结果单元格并向下拖动其自动填充句柄以获取其他全名的名字。
=LEFT(B5,SEARCH(" ", B5)-1)
2. 在单元格 E5 中输入以下公式,然后按 输入 获取第一个中间名的键。 选择结果单元格并向下拖动其自动填充句柄以获取其他中间名。
=MID(B5, SEARCH(" ", B5) + 1, SEARCH(" ", B5, SEARCH(" ", B5)+1) - SEARCH(" ", B5)-1)
3. 要获取姓氏,请在单元格 F5 中输入以下公式,然后按 输入,然后选择结果单元格并将其自动填充句柄拖到您需要的单元格上。
=RIGHT(B5,LEN(B5) - SEARCH(" ",B5, SEARCH(" ",B5,1)+1))
这里是介绍 Kutools for Excel“ 分割名称 功能,只需点击几下,您就可以将全名一次拆分为名字、中间名和姓氏。
1.选择要拆分的全名单元格,然后单击 库工具 > 合并与拆分 > 分割名称.
2.在 分割名称 对话框,您需要配置如下。
3.在接下来弹出 分割名称 对话框,选择目标单元格输出分离的文本,然后单击 OK. 请参阅下面的演示。
如果您想免费试用(30天)此实用程序, 请点击下载,然后按照上述步骤进行操作。
Example #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.选择一个空白单元格放置列表中第一个文本字符串的文本,复制或输入下面的公式并按 输入 钥匙。 选择结果单元格并向下拖动其自动填充句柄以获取列表中其他文本字符串的文本。
=LEFT(B5,MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&"0123456789"))-1)
2. 选择第一个结果单元格 (D5) 旁边的单元格 (E5),复制或输入下面的公式,然后按 输入. 选择结果单元格并向下拖动其自动填充句柄以获取列表中其他文本字符串的编号。
=RIGHT(B5,LEN(B5)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&"0123456789"))+1)
使用 Flash Fill 拆分文本和数字(2013 及更高版本)
如果您使用的是 Excel 2013 或更高版本,则可以应用 Flash填充 内置将文本和数字从一个单元格拆分为两列。
备注:要使快速填充功能起作用,您需要将结果列定位到原始文本字符串列旁边。 例如,如果原始文本字符串位于 B 列,则分隔的文本和数字应位于 C 列和 D 列。请参见截图:
1. 在单元格 C5 中手动键入第一个文本字符串单元格 (D5) 的文本。
2. 继续在单元格 C6 中键入第二个文本字符串单元格 (D6) 的文本。
3.激活C7单元格,点击 时间 > Flash填充.
然后其他文本字符串的文本会自动填充到单元格中,如下面的屏幕截图所示。
4. 重复步骤 1 到 3 以获取 D 列中的数字。
:
如果列表中的文本字符串不规则,则上述两种方法可能会返回错误的结果,如下面的屏幕截图所示。
这里介绍一个用户定义函数,可以帮助您将单元格中的文本和数字拆分为两列,无论数字在文本字符串中的位置。 看截图:
1。 按 其他 + F11 键。
2.在开幕 Microsoft Visual Basic应用程序 窗口中,单击 插页 > 模块,然后将下面的 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。 按 其他 + Q 关闭键 Microsoft Visual Basic应用程序 窗口。
4. 选择一个单元格输出第一个文本串的文本,输入下面的公式,然后按 输入 钥匙。 选择此结果单元格并向下拖动其自动填充句柄以获取同一列表中其他文本字符串的文本。
=SplitText(B5,FALSE)
5.选择第一个文本结果单元格旁边的单元格输出数字,输入以下公式并按 输入 钥匙。 选择此结果单元格并向下拖动其自动填充句柄以获取其他文本字符串的编号。
=SplitText(B5,TRUE)
这里推荐将单元格中的文本和数字一次拆分为两列的最简单方法。 应用分裂细胞 的特点 Kutools for Excel 只需点击几下即可帮助您解决此问题。
1. 选择要将文本和数字拆分为两列的文本字符串单元格。
2。 点击 库工具 > 合并与拆分 > 分裂细胞.
3.在 分裂细胞 对话框,需要做如下设置。
4.在下 分裂细胞 对话框,选择一个单元格输出分隔的文本和数字,然后单击 OK 按钮。
然后您可以看到所选单元格中的文本和数字一次分为两列,如下面的屏幕截图所示。
如果您想免费试用(30天)此实用程序, 请点击下载,然后按照上述步骤进行操作。
2. 拆分数字单元格
这部分介绍了如何在两种情况下拆分数字单元格:将一位以上的数字拆分为单个数字和将十进制数字拆分为整数和小数部分。
示例 #1:按数字拆分单元格
如果您想将一个多于一位的数字拆分为不同列中的单个数字,请尝试以下方法之一。
下面的公式可以帮助将数字拆分为单独的数字并将它们放在不同的列中。
通用公式
=MID($A1, COLUMNS($A$1:A$1), 1)
争论
1.选择一个空白单元格输出第一个数字,输入下面的公式,然后按 输入 键。
=MID($B3, COLUMNS($B$3:B$3), 1)
2. 选择此结果单元格并将其自动填充句柄向右拖动到单元格以获取其他数字。 保持选中所有结果单元格,然后向下拖动自动填充手柄以获取其他数字的单个数字。
备注:在此公式中,B3 是包含要拆分为单个数字的数字的单元格,您可以根据需要更改它。
下面的 VBA 代码还可以帮助将单元格中的数字拆分为 Excel 中的单个数字。 您可以执行以下操作。
1。 按 其他 + F11 键打开 Microsoft Visual Basic应用程序 窗口。
2.在 Microsoft Visual Basic应用程序 窗口中,单击 插页 > 模块,然后将下面的 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 弹出对话框,您需要选择要拆分的数字单元格范围,然后单击 OK 按钮。
4. 第二个 Kutools for Excel 弹出对话框,需要选择一个单元格输出单个数字,然后点击 OK.
备注:此代码也可以将单词拆分为单个字母。
然后所选单元格中的数字被拆分为单独的数字并放在不同的列中。
Kutools for Excel“ 分裂细胞 功能是一个方便的工具,可帮助您在 Excel 中轻松地将数字拆分为单个数字。
1.安装后 Kutools for Excel, 选择要拆分的数字单元格范围,单击 库工具 > 合并与拆分 > 分裂细胞.
2.在 分裂细胞 对话框,进行以下设置。
3.在开幕 分裂细胞 对话框,选择一个空白单元格输出数字,然后单击 OK 按钮。
然后所选单元格中的数字一次被拆分为单个数字。
如果您想免费试用(30天)此实用程序, 请点击下载,然后按照上述步骤进行操作。
Example #2 以十进制分割数字
本节讨论在 Excel 中将数字拆分为整数和小数部分的几种方法。
TRUNC 函数可用于在 Excel 中按十进制拆分数字。 您可以执行以下操作。
通用公式
获取整数部分
=TRUNC(A1)
获取小数部分
=A1-TRUNC(A1)
争论
现在,您可以应用这两个公式在 Excel 中以十进制分割指定范围内的单元格中的数字。
1.选择一个单元格放置第一个数字单元格的整数部分,输入下面的公式,然后按 输入 钥匙。 选择结果单元格并向下拖动其自动填充句柄以获取其他数字单元格的整数。
=截断(B5)
2.选择第一个结果单元格旁边的单元格放置小数部分,输入下面的公式并按 输入 钥匙。 选择此结果单元格并向下拖动其自动填充句柄以获取其他数字单元格的小数。
=B5-截断(B5)
您可以应用 文本到列 在 Excel 中以十进制分割数字的功能。
1. 选择要以十进制拆分的数字单元格范围,然后单击 时间 > 文本到列.
2.在 将文本转换为列向导–第1步,共3步 对话框中,选择 分隔 单选按钮并单击 下一页 按钮。
3.在 步骤2 对话框中,仅选中 其他名称 复选框,在文本框中输入一个点,然后单击 下一页 按钮。
4.在 步骤3 对话框中,单击 按钮选择目标单元格输出拆分的整数和小数,最后单击 完成 按钮。 看截图:
然后您可以看到整数和小数部分从选定的单元格中分离出来,如下面的屏幕截图所示。 但是,小数部分丢失了用户可能需要的负号。
在上面的例子中,我们介绍了使用 Flash填充 函数在单元格中拆分文本和数字,这里我们将介绍相同的方法在十进制拆分数字。
1. 输入几个例子。 在本例中,我们在 C5 中输入 B5 的整数部分,在 C6 中输入 B6 的整数部分。 看截图:
备注:对于负数,不要忘记一起输入减号。
3.在要填写的列中选择包括几个示例的单元格,点击 时间 > Flash填充.
然后从指定的数字单元格中提取整数,如下面的屏幕截图所示。
4. 重复上述步骤,从相同的数字单元格中拆分小数。
3. 拆分日期单元格
另一种经常遇到的情况是拆分日期单元格。 如果您需要将日期单元格拆分为单独的日、月和年,或将日期单元格拆分为单独的日期和时间,请根据需要使用以下解决方案。
Example #1 将日期单元格拆分为单独的日、月和年
假设您有一个 B5:B9 范围内的日期列表,并且想要将每个日期值拆分为三个单独的列,分别表示日、月和年。 这里提供了三种方法来帮助你实现拆分日期的结果。
您可以根据以下三个公式应用 日期 功能, 月 功能和 年 在 Excel 中将日期拆分为单独的日、月和年的函数。
通用公式
=DATE(A1)
=MONTH(A1)
=YEAR(A1)
争论
1. 创建三列来放置单独的日、月和年。
2.选择Day列的第一个单元格,输入下面的公式,然后按 输入 获取第一个日期单元格 (B5) 的日期的键。 选择此结果单元格并向下拖动其自动填充句柄以获取其他日期单元格的天数。
=DAY(B5)
3. 执行与步骤 1 相同的操作,将以下公式应用到 月 和 年 列以从日期单元格中获取单独的月份和年份。
获取日期的月份
=MONTH(B5)
获取日期的年份
=YEAR(B5)
您还可以 按照上述步骤应用“文本到列”功能 在 Excel 中将日期单元格拆分为单独的日、月和年。
备注: 在里面 步骤2 对话框中,仅选中 其他名称 框,然后键入 / 文本框中的符号。
下面的演示演示了如何使用 分裂细胞 的特点 Kutools for Excel.
此功能可帮助您实现只需单击几下即可批量拆分日期的结果。
如果您想免费试用(30天)此实用程序, 请点击下载,然后按照上述步骤进行操作。
Example #2 在单元格中拆分日期和时间
假设 B5:B9 中有一个日期时间列表,并且您想将日期和时间拆分为单独的列,本节将演示不同的方法来帮助您完成它。
您可以应用以下公式将日期和时间拆分为 Excel 中的不同列。
1. 准备两列来放置日期和时间。
2. 您需要将日期列单元格设置为 日期 格式,并将时间列单元格设置为 时间 格式。
3. 选择第一个单元格 日期 列,输入下面的公式,然后按 输入 获取 B5 日期的键。 选择此结果单元格并向下拖动其自动填充句柄以获取其他日期。
=INT(B5)
4. 在时间列中应用以下公式以获取 B5:B9 中的时间。
=B5-D5
使用 Flash Fill 拆分单元格中的日期和时间(2013 及更高版本)
如果您使用的是 Excel 2013 及更高版本,您可以应用内置的快速填充功能将日期和时间拆分为不同的列。
1. 创建日期和时间列并输入您想要的几个示例作为输出。 在里面 日期 列,我们在C5中输入B5的日期,在C6中输入B6的日期。 在里面 时间 列,我们在D5中输入B5的时间,在D6中输入B6的时间。 看截图:
2.选择你要填写的日期栏(包括几个例子),点击 时间 > Flash填充.
3. 选择你要填写的时间栏(包括几个例子),然后启用 Flash填充 功能也一样。 然后 B5:B9 中的日期和时间被分成单独的列,如下面的演示所示。
现在,您已经学习了如何在不同情况下使用不同方法拆分 Excel 中的单元格。 您将能够做出最佳决定来确定您选择哪种方法取决于您的具体情况。
最佳办公生产力工具
🤖 | Kutools 人工智能助手:基于以下内容彻底改变数据分析: 智能执行 | 生成代码 | 创建自定义公式 | 分析数据并生成图表 | 调用 Kutools 函数... |
热门特色: 查找、突出显示或识别重复项 | 删除空白行 | 合并列或单元格而不丢失数据 | 不使用公式进行四舍五入 ... | |
超级查询: 多条件VLookup | 多值VLookup | 跨多个工作表的 VLookup | 模糊查询 .... | |
高级下拉列表: 快速创建下拉列表 | 依赖下拉列表 | 多选下拉列表 .... | |
列管理器: 添加特定数量的列 | 移动列 | 切换隐藏列的可见性状态 | 比较范围和列 ... | |
特色功能: 网格焦点 | 设计图 | 大方程式酒吧 | 工作簿和工作表管理器 | 资源库 (自动文本) | 日期选择器 | 合并工作表 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊过滤器 (过滤粗体/斜体/删除线...)... | |
前 15 个工具集: 12 文本 工具 (添加文本, 删除字符,...) | 50+ 图表 类型 (甘特图,...) | 40+ 实用 公式 (根据生日计算年龄,...) | 19 插入 工具 (插入二维码, 从路径插入图片,...) | 12 转化 工具 (小写金额转大写, 货币兑换,...) | 7 合并与拆分 工具 (高级组合行, 分裂细胞,...) | ... 和更多 |
使用 Kutools for Excel 增强您的 Excel 技能,体验前所未有的效率。 Kutools for Excel 提供了 300 多种高级功能来提高生产力并节省时间。 单击此处获取您最需要的功能...
Office Tab 为 Office 带来选项卡式界面,让您的工作更加轻松
- 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
- 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
- 每天将您的工作效率提高50%,并减少数百次鼠标单击!