提取数字公式大全,再不会提取数字就是你的错了

  • A+
所属分类:财税
编按:提取数字方法有很多种,之前发过提取数字的技巧法还有公式法,在公式方法中除了这篇文章中提到的还有其他的,今天这篇文章就做一个总结。

方法一:

提取数字公式大全,再不会提取数字就是你的错了

公式

=VLOOKUP(0,MID(A2,ROW(1:20),11)*{0,1},2,0)

公式解释:首先,用mid函数+Row函数从第1个字符开始,截20次并得到20个结果(如果字符串比较长,可以用一个足够大的数字替代20,比如99),其中总有一个是11位的纯数字。为了方便用Vlookup,用*{0,1}把截取的结果变成2列。

方法二:

提取数字公式大全,再不会提取数字就是你的错了

公式:

=-LOOKUP(1,-MID(A2,MIN(FIND(ROW($1:$10)-1,A2&1/17)),ROW($1:$15)))

公式解释:公式里面的1/17其实是等于0.0588235294117647。将其与查找单元格连接并且在前面嵌套FIND(ROW($1:$10)-1就可以查找单元格中数字每次出现的位置。在在前面嵌套一个min函数就可以确定第一个数字出现的位置是哪里。然后用mid函数截取字符。截取的字符里面当然包含了完整的数字,所以在最外面加上lookup函数并且第一参数用一个很小的值1,就可以确定出数字然后显示出来。

方法三:

提取数字公式大全,再不会提取数字就是你的错了

公式:

=MIDB(A2,SEARCHB("?",A2),2*LEN(A2)-LENB(A2))

公式解释:该公式运用了字节与字符的关系,数字与汉字的字符是一样的,但是汉字与数字的字节是不一样的,一个汉字是两个字节,一个数字是一个字节;【SEARCHB("?",A2)】算出第一个字节的位置是5;【2*LEN(A2)-LENB(A2)】算出数字的长度,【MIDB(A2,SEARCHB("?",A2),2*LEN(A2)-LENB(A2))】的原理就跟mid函数一样截取公式了,只不过mid是按字符截取,midB是按字节截取。

公式四:

提取数字公式大全,再不会提取数字就是你的错了

公式:

=-LOOKUP(1,-MID(A2,MIN(FIND(ROW($1:$10)-1,A2&1/17)),ROW($1:$15)))

公式五

 

提取数字公式大全,再不会提取数字就是你的错了

但该公式只能正确提取15个数值

最后来个VBA自定义函数

Function Getnum(rg As Range)
    Dim reg As Object
    Set reg = CreateObject("VBScript.RegExp")
    With reg
      .Global = True
      .Pattern = "[^0-9]"
    End With
    Getnum = reg.Replace(rg.Value, "")
End Function

将上面代码粘贴到VBA编辑器

提取数字公式大全,再不会提取数字就是你的错了

然后你的excel就有了Getnum公式了

提取数字公式大全,再不会提取数字就是你的错了

打完收工,下期再“贱”。

资料来源微信公众号-Excel教程练习

  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: