注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Oh! I see you!

Hi! ppmm~~

 
 
 

日志

 
 

提取Excel单元格的数字相加-求和(续文)  

2011-04-20 23:07:53|  分类: Excel |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

本文链接:http://oicu.cc.blog.163.com/blog/static/123039471201132011345331/

最近都没写博客了,这4月可不能交白卷,好吧,来一篇……

先看相关的历史博文:

提取单元格的数字相加-求和

[Excel VBA] 提取字符串中数字、中文、英文字符的自定义函数(修正版)


老习惯,问题描述:

发信人: liji (里脊), 信区: OfficeSoft
标  题: 怎么提取一个单元格里的数字啊
发信站: 水木社区 (Tue Apr 19 15:02:24 2011), 站内

比如excel里有这么一个格子:好10坏5极其坏15,我想求10,5,15的和,有办法弄个公式不。


解决方法:

做一个自定义函数,就不加注释了。

'2011/4/20
Function RegExpGetStr(T As Range) As Double
    Dim regEx, Match, Matches
    Dim sum As Double
    Application.Volatile
    'by oicu#lsxk.org
    Set regEx = CreateObject("vbscript.regexp")
    regEx.Pattern = "\d+"
    '这里是匹配正整数,如果是浮点数改为"(-?\d+)(\.\d+)?"
    '每次提取一位数字则用"\d"
    regEx.IgnoreCase = True
    regEx.Global = True
    regEx.MultiLine = False
    Set Matches = regEx.Execute(T.Text)
    For Each Match In Matches
        sum = sum + CDbl(Match)
    Next
    RegExpGetStr = sum
End Function

使用方法:

假设A1的内容是:好10坏5极其坏15

那B1里写入公式:=RegExpGetStr(A1)

就会得到结果了。


稍微修改这个自定义函数,也可以用来提取数字!当然sum的类型也要改为string

sum = sum & Match

  评论这张
 
阅读(2495)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018