2

我在这样的单元格中有条目:

75864543&m
2211842
1523674&mr
3452435tr

单元格有不同数量的数值,有些单元格末尾有字符/字母。我想修剪除数值以外的所有内容,但由于数值的长度不同而被卡住。

有人有解决方法吗?

4

2 回答 2

2

假设数据开头有 1 到 9 位数字(根据需要进行调整),您可以使用此公式

=LOOKUP(10^10,LEFT(A1,{1,2,3,4,5,6,7,8,9})+0)

于 2013-10-29T22:41:53.313 回答
0

尝试以下用户定义函数:

Public Function ReturnNumerals(rng As Range) As String
    Dim sStr As String, i As Long, sStr1 As String
    Dim sChar As String
      sStr = rng.Value
      For i = 1 To Len(sStr)
        sChar = Mid(sStr, i, 1)
        If sChar Like "[0-9]" Then
          sStr1 = sStr1 & sChar
        End If
      Next
    ReturnNumerals = sStr1
End Function

编辑#1

如果你是“恐高症”或者因为其他原因排除了 VBA,那么试试这个数组公式:

=MID(SUMPRODUCT(--MID("01"&A1,SMALL((ROW($1:$300)-1)*ISNUMBER(-MID("01"&A1,ROW($1:$300),1))),ROW( $1:$300))+1,1),10^(300-ROW($1:$300))),2,300)

必须使用CNTRL-SHFT-ENTER输入数组公式,而不仅仅是ENTER键!

例如,如果 A1 包含:

a123wer98bg5

丑陋的数组公式将返回:

123985

于 2013-10-29T22:19:19.703 回答