跳到主要内容

与 Excel 中的连接(拆分单元格)相反 – 4 种简单方法

Excel中的Concatenate函数用于将多个单元格的内容合并到一个单元格中,但有时您可能需要执行相反的操作,即将一个单元格的内容拆分为多个单元格。此操作对于数据分析和组织非常有用。本文将介绍四种简单的方法来实现此目的,帮助您在 Excel 中更有效地管理数据,无论您是初学者还是高级用户。

在 Excel 中执行与 CONCATENATE 相反的操作


使用公式执行 CONCATENATE 的相反操作

要执行与 CONCATENATE 函数相反的操作,您可以使用公式来帮助根据特定分隔符将文本字符串拆分为多个单元格。

  1. 在要放置结果的空白单元格中输入或复制以下公式,然后将填充柄向右拖动到单元格以填充此公式,单元格 A2 中的单元格值已拆分为单独的单元格,请参见屏幕截图:
    =TRIM(MID(SUBSTITUTE($A2," ",REPT(" ",999)),COLUMNS($A:A)*999-998,999))
    备注:在上面的公式中,您还可以使用不同的分隔符将单元格值拆分为多个单元格。只需更换 第一个引号之间有空格 与您选择的分隔符。
  2. 然后,继续将填充柄向下拖动到要应用此公式的单元格区域。这样做会将所有单元格值拆分为单独的列,如下图所示:
提示: Excel 365 的公式

如果您使用 Excel 365,您会发现一个更简单、更高效的功能 - 文本分割 它可用于将数据分成多列。

  1. 请应用以下公式,按下后 输入 键,由空格分隔的每个项目自动进入单独的列,请参见屏幕截图:
    =TEXTSPLIT(A2, " ")
  2. 接下来,选择包含结果的单元格,然后向下拖动填充手柄以应用公式并获得剩余的结果,请参见屏幕截图:

使用强大的功能执行与 CONCATENATE 相反的操作

Kutools for Excel 提供了一个用户友好的 分裂细胞 功能,通过此智能功能,您可以根据需要根据任何分隔符快速将单元格内容拆分为多列或多行。

备注: 如果你想用这个 分裂细胞 功能,请 下载并安装 Kutools for Excel 第一。

下载并安装后 Kutools for Excel,然后点击 库工具 > 合并与拆分 > 分裂细胞 启用此功能 分裂细胞 特征。在对话框中,请设置如下选项:

  1. 点击 按钮来选择要从中拆分的数据列表 分割范围 部分;
  2. 在下面 Type 部分,选择 拆分为列 选项;
  3. 来自 分割为 部分,请选择您要分割单元格内容的分隔符。在这里,我会选择 太空;
  4. 然后,单击 OK 按钮;
  5. 在另一个提示框中,单击要放置结果的单元格;
  6. 点击 OK 得到结果。
备注: 要应用此功能,请 下载并安装 Kutools for Excel 第一。

使用快速填充功能执行与 CONCATENATE 相反的操作

Excel 2013 及更高版本引入了一项名为“快速填充”的显着功能。该工具不仅可以帮助您自动填充数据单元格,还可以让您无缝拆分单元格内容。在本节中,我将探讨如何使用快速填充功能在 Excel 中拆分数据。

  1. 在您希望拆分数据的原始数据列旁边的相邻单元格 (B2) 中,输入所需的名字 - Lucky。然后,按 输入 键转到下一个单元格。看截图:
  2. 然后,按 按Ctrl + E 要填充其余单元格,请参见屏幕截图:
  3. 对姓氏和生日列执行相同的过程,您将得到如下演示所示的结果:
笔记:
  • 快速填充要求输出数据与原始数据相邻,中间没有任何空白列。
  • 从快速填充功能获得的结果是静态的,这意味着如果原始数据有更新,您将需要重新运行该功能以反映这些更改。
  • 要了解有关 Fill Flash 功能的更多信息,请查看此 使用快速填充掌握 Excel 数据输入 教程。

使用“文本到列”功能执行 CONCATENATE 的相反操作

实际上,在 Excel 中,文本分列功能与连接功能相反,您可以应用它通过任何所需的分隔符将单元格值拆分为多个单元格。

  1. 选择要拆分的单元格。然后,单击 时间 > 文本到列,请参见屏幕截图:
  2. In 将文本转换为分栏向导的第 1 步, 选择 分隔 选项,然后单击 下一页 按钮,请参见屏幕截图:
  3. In 向导的第 2 步,指定要在下面使用的分隔符 定界符 选项。在这里,我将检查 太空。然后,继续单击 下一页 按钮,请参见屏幕截图:
  4. In 向导的第 3 步,检查 产生我在下 列数据格式,然后选择要在其中查找拆分值的单元格 目的地 场地。最后,点击 完成 按钮,请参见屏幕截图:
  5. 现在,选定的单元格值已分为多列,请参见屏幕截图:

这些方法中的每一种都满足不同的用户偏好和数据复杂程度,从而在 Excel 中实现高效的数据操作和组织。无论您需要拆分名称、日期还是任何其他结构化数据,这些技术都可以为增强您的 Excel 技能和提高数据管理能力提供有价值的解决方案。如果您有兴趣探索更多 Excel 提示和技巧,我们的网站提供了数千个教程,请 单击此处访问它们。 感谢您的阅读,我们期待在未来为您提供更多有用的信息!


相关文章:

  • 按分隔符将文本字符串拆分为多行 - 3 个快速技巧
  • 通常,您可以使用文本分栏功能将单元格内容按特定分隔符(例如逗号、点、分号、斜线等)拆分为多列。但是,有时,您可能需要将分隔的单元格内容拆分为多行并重复其他列中的数据,如下图所示。 您有什么好的方法可以在 Excel 中处理此任务吗? 本教程将介绍一些在 Excel 中完成这项工作的有效方法。
  • 将一个大表拆分为多个小表
  • 现在,如果您有一个包含多列和成百上千行数据的大型工作表,则希望根据列值或行数将该大型表拆分为多个小型表,以获得以下结果。 您如何在Excel中处理此任务?
  • 将全名拆分为名字和姓氏
  • 假设您有一个名称列表,如下面的单个列中所示,第一个屏幕快照,则需要将全名拆分为名字列,中间名称列和姓氏列,如下面的屏幕快照所示。 这里有一些棘手的方法可以帮助您解决此问题。
Comments (16)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Many thanks for your wonderful website and the helpful solutions.
I am using a form on my website to collect CVs and the excel output is like below:

Degree | College Name | Discipline | Year of Graduation | GPA
Masters | Oxford | Mathematics | 2020 | 88
Bachelors | Cambridge | Chemistry | 2016 | 76
Diploma | George's School | Arts | 2012 | 94

All the above lies in a single cell in excel / CSV file.

Can anybody please help me how I can rearrange all this into an excel table with each cell showing part of the entries.

I appreciate your solutions.

best regards,
Nasser
This comment was minimized by the moderator on the site
Hello, Emami

To split the data you provided, both the formula and Text to Column feature can help you. please do as this:
Method1: formula: (After pasting the formula, drag the fill handle right to get the first line result, and then drag the fill handle down to get other results.)
=TRIM(MID(SUBSTITUTE($A1,"|",REPT(" ",999)),COLUMNS($A:A)*999-998,999))

https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-reverse-concatenate.png

Method2: Text to Column:
By using Text to Column feature step by step, and in step3, please enter | character into Other box:
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-reverse-concatenate-2.png

Please try, hope it can help you!
This comment was minimized by the moderator on the site
Dear skyyang,
Many thanks for the reply.
First, I cannot use the text to column method because this process has to be done automatically by a formula.
Second, the problem is the table output I receive from csv file (the form entry) is saved in a single cell not in three rows.
ie. All three rows (A1:A4) are stored in one single cell not 4 cell in 4 rows.
I hope you understand my problem and can provide me with a solution.

thanks.
This comment was minimized by the moderator on the site
Hello, Emami,
If your data in a single cell, first, you should split the data into multiple rows based on the line breaks. to split the data into rows, please use this code:
Sub SplitCells()
'Update by Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    lLFs = VBA.Len(Rng) - VBA.Len(VBA.Replace(Rng, vbLf, ""))
    If lLFs > 0 Then
        Rng.Offset(1, 0).Resize(lLFs).Insert shift:=xlShiftDown
        Rng.Resize(lLFs + 1).Value = Application.WorksheetFunction.Transpose(VBA.Split(Rng, vbLf))
    End If
Next
End Sub


Applying the code to split the data into multiple rows, see screenshot:
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-split-data.png

Then, you can use this formula to split them into multiple columns as you need.
=TRIM(MID(SUBSTITUTE($A1,"|",REPT(" ",999)),COLUMNS($A:A)*999-998,999))


Please have a try, hope it can help you, if you have any other problem, please comment here.
This comment was minimized by the moderator on the site
I believe it has something to do with having over a certain amount of value in a cell. How does one use this formula with large strings?
This comment was minimized by the moderator on the site
Thank you for this. I had a strange occurence where two strings of text produced #Value!, while all the rest was fine. Any idea why this would happen?
This comment was minimized by the moderator on the site
just want to know if in a cell content i.e (123). can it be splitted to multiple column seperately as cell1 as 1, cell2 as 2 and cell3 as 3
This comment was minimized by the moderator on the site
my query is below
from given data
A B
1 Capital Account Capital Account 6,62,73,000.00
2 SHARE CAPITAL A/C SHARE CAPITAL A/C 67,17,300.00
3 SHARE PREMIUM A/C SHARE PREMIUM A/C 5,95,55,700.00


I need in column C (C + B-A) i.e
C
1 6,62,73,000.00

2 67,17,300.00

3 5,95,55,700.00
This comment was minimized by the moderator on the site
sorry I m not see perfect in first time
this formula is perfect and correct
This comment was minimized by the moderator on the site
you are A Rong Talling thissss formula
This comment was minimized by the moderator on the site
Excellent directions!
This comment was minimized by the moderator on the site
oh snap, i got it above...using text to columns then split option = 'space'
This comment was minimized by the moderator on the site
Thank you so much, helpful indeed. What if there is no comma delimiter in between the words like, "Steve Simpson" and you still want to split?
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations