【问题标题】:Searching Excel cell for First Number and Copying all Words before that.在 Excel 单元格中搜索第一个数字并复制之前的所有单词。
【发布时间】:2016-05-28 12:07:08
【问题描述】:

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

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)

我知道,如果我搜索第一个数字,结果会包含一些不需要的括号,并且可能会包含一些额外的单词——尤其是在最后一种情况下——但这是我能想到的解决问题的最佳方法。

提前致谢

【问题讨论】:

    标签: excel excel-formula


    【解决方案1】:

    这个怎么样?如果您的字符串在单元格 A1 中,=LEFT(A1,MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A1&"0123456789"))-1)

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

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

    【讨论】:

      【解决方案2】:

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

      此公式适用于除最后一行之外的所有内容:=MID(A3,1,IFERROR(FIND("(",A3)-1,IFERROR(FIND(",",A3)-1,LEN(A3))))。基本上,我首先会寻找一个左括号,并且大多数情况下它都是您要查找的单词的结尾。如果没有“(”,那么我会寻找一个逗号。如果没有,那么就使用那里的整个单词。

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-02-28
        • 2016-10-15
        • 2016-12-10
        • 2014-03-23
        • 1970-01-01
        • 2019-02-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多