如果中间长度不同,如何动态删除文本的中间部分?

时间:2016-06-17 12:50:16

标签: excel excel-formula

以下是一个例子:

扩展名:12345678 - 随机,名称

该行存在于工作簿的多个位置,我需要对其进行格式化以仅留下扩展号本身。但是,扩展名是不同的长度。我需要一个公式驱动的解决方案谢谢!

3 个答案:

答案 0 :(得分:0)

你去......

enter image description here

=TRIM(MID(A1,SEARCH("-",A1)+1,SEARCH(",",A1)-SEARCH("-",A1)-1))

答案 1 :(得分:0)

这也应该有效:

=REPLACE(A1, 1, LEN(A1), MID(A1, SEARCH("-", A1)+1, SEARCH(",",A1)-1-SEARCH("-",A1)))

示例:

enter image description here

TRIM的答案相同,但使用REPLACE代替。

答案 2 :(得分:0)

其他两个解决方案都依赖于某些字符,例如逗号的连字符或其他内容。如果无法确保这一点,那么以下功能可能更适合。

=MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789")),MAX(FIND({0,1,2,3,4,5,6,7,8,9},"0123456789"&A1))-1)

然而,这也是一个陷阱。这假设该单元格中只有一个数字。所以,如果你应该遇到这样的事情:

  

扩展名:12345678 - 随机,名称1234567

然后上面的功能将不起作用。