在Excel单元格中搜索第一个数字并在此之前复制所有单词。

时间:2016-02-17 00:24:44

标签: excel excel-formula

我有一个条目列表,包括单词,字母和数字。我只想复制第一个数字之前发生的单词。

Term Loan
Subordinated, 10% due 6/23/2020
Subordinated Debt (Interest Rate 12.00%, Maturity Date Due 2/15/19)
One stop (10.01%, Due 12/1/18)
Second Lien Term Loan to CP Well Testing, LLC (9.00% (LIBOR + 7.00% with 2.00% LIBOR floor) plus 9.00% PIK, due 4/1/2019)
Prime Plus 2%, Current Coupon 5.25%, Secured Debt (Maturity - November 14, 2013)

我试图想到的公式将会回归:

Term Loan
Subordinated
Subordinated Debt
One Stop
Seccond Lien Term Loan to CP Well Testing, LLC
Secured Debt

我知道如果我搜索第一个数字,结果将包括一些不需要的括号,也许还有一些额外的词 - 特别是在最后一个案例中 - 但这是我能想到的最好的解决问题的方法。

提前致谢

2 个答案:

答案 0 :(得分:1)

这不是一个容易回答的问题,这不是一个完整的答案。希望您可以将此作为更好解决方案的起点。您的数据不是一种易于使用的格式。正如你所指出的那样,它是单词,字母和数字的混合。

此公式适用于除最后一行之外的所有内容:=MID(A3,1,IFERROR(FIND("(",A3)-1,IFERROR(FIND(",",A3)-1,LEN(A3))))。基本上我首先去寻找一个开括号,这大部分时间都是你正在寻找的单词的结尾。如果没有“(”那么我会找一个逗号。如果没有,那么只需使用那里的整个单词。

您可以添加到我的公式中以使其适用于最终案例,但我建议您尝试修复起始数据。

答案 1 :(得分:1)

这个怎么样?如果你的字符串在单元格A1中,= LEFT(A1,MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A1&amp;“0123456789”)) - 1)< / p>

我从下面的ExtendOffice借用了搜索公式。它使用大括号硬编码数组(键入它们,不要点击控制输入),并使用连接的数字,以便没有任何搜索返回错误。如果你没有任何数字,它会返回连接0的位置,因此你得到整个字符串。

http://www.extendoffice.com/documents/excel/2510-excel-find-first-last-number-in-string.html