2014-08-29 26 views
0

我有一系列的是这样的多个名称 - Excel中

John Blogs;John Bloggs;Jean Bloke;Jordon Bean,等等等等东西了小区中的10名。

我需要一个公式将每个全名分割成一个单独的单元格...我一直在与MID,FIND等工作,但似乎无法通过3个名字之前来取消粘贴!

不知道是否有人可以帮忙!

感谢 本

+0

Excel有Split()方法吗? VB有它 – 2014-08-29 06:04:22

回答

0

分割你超多列,而不是一个单一的公式的工作。

您正确使用FIND()来获得“;”的偏移量。

并使用LEFT()来提取名称,用MID()来提取剩余的字符串。

然后你要么有一个空的单元格,要么你有一个单元格中最多有9个名字。

在整个工作表上重复这个过程以获取所有的名字,加上可能包含#VALUE错误的一些单元格。


要显示没有错误的输出,请使用类似=IF(ISERR(A1), "", A1)的内容。

当然隐藏你所做的一切工作。

2

我建议使用带分号的“文本到列”功能作为分隔符。

如果你坚持要用公式,这会为你工作:

  1. 让我们假设你的文字是在细胞A1。然后在B1型=";"&A1&";"
  2. 从单元格A2I2输入1到9。
  3. A3中输入公式=MID($B$1,FIND(CHAR(1),SUBSTITUTE($B$1,";",CHAR(1),A2))+1,FIND(CHAR(2),SUBSTITUTE($B$1,";",CHAR(2),A2+1))-FIND(CHAR(1),SUBSTITUTE($B$1,";",CHAR(1),A2))-1)
  4. 将此公式复制到B3C3,..,I3
+1

与'iserror'一起,这完美地工作! – 2014-08-29 07:01:25

+1

我可以证实。使用“文本到列”是作为一次性解决方案的最简单方法。检查如何操作:http://www.excel-easy.com/examples/text-to-columns.html – C4u 2014-08-29 07:03:38