使用数字作为分隔符在 Excel 单元格中拆分字符串

使用数字作为分隔符在 Excel 单元格中拆分字符串

示例单元格值:千禧疼痛中心总裁兼创始人,1998 年至今。

我希望将其解析(拆分)为“千禧疼痛中心总裁兼创始人”,并在另一个单元格中解析(拆分)为“1998 年至今”。

这可行吗?

答案1

使用数组公式即可实现。以下是基于一种算法在 MS Office 网站上。我修改了公式以字符串长度考虑到这一点,以便您可以将其与其他短语一起使用。

假设 A1 包含你的字符串(“总裁兼创始人,千禧疼痛中心,1998年至今”),Ctrl++Shift这个EnterB1

=MATCH(TRUE,ISNUMBER(1*MID(A1,ROW(INDIRECT("$1:$"&LEN(A1))),1)),0)

它将返回字符串中出现的第一个数字的索引。例如,它将返回 46。

输入此(作为正常公式)C1

=MID(A1,1,B1-1)

它将回归千禧疼痛中心总裁兼创始人,

输入此(作为正常公式)D1

=RIGHT(A1,LEN(A1)-B1+1)

它将回归1998 年至今

在此处输入图片描述

答案2

这些将起作用,它们是数组公式,因此您必须使用CTRL-SHIFT-ENTER当您在单元格中输入它们时。数字 $40 只需足够大即可容纳最大的字符串:

=LEFT(A1, MATCH(TRUE,ISNUMBER(1*MID(A1, ROW($1:$40), 1)),0)-1)

=RIGHT(A1, LEN(A1) - MATCH(TRUE,ISNUMBER(1*MID(A1, ROW($1:$40), 1)),0) +1)

MID 语句创建字符串中所有字符的数组。ISNUMBER
语句随后将其转换为 TRUE/FALSE 数组。MATCH 语句
随后找到第一个 TRUE,因此找到第一个数字。
然后只需进行解析即可。

相关内容