Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1717|回复: 4

[已解决]坐求函数公式解决。再次发帖,麻烦各位大神了,先谢了

[复制链接]
发表于 2016-11-30 17:02 | 显示全部楼层 |阅读模式
F列的公式是随意编辑的且单元格的行数随编辑会增加,但是文字都是在[]里。,详细见附件,谢谢
最佳答案
2016-11-30 20:16
自定义函数,自己慢慢用吧
  1. Option Explicit

  2. Function getSum(rng As Range) As Double
  3.     Dim regx As Object
  4.     Dim strText$
  5.     Set regx = CreateObject("vbscript.regexp")
  6.     With regx
  7.         .Global = True
  8.         .Pattern = "\[.*?\]"
  9.         strText = Replace(Replace(.Replace(rng, ""), "(", "("), ")", ")")
  10.     End With
  11.     getSum = Evaluate(strText)
  12. End Function
复制代码


累加公式和问题.zip

19.18 KB, 下载次数: 10

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2016-11-30 17:05 | 显示全部楼层
再次发帖,麻烦各位大大神了,希望能用函数一次到位,谢谢了,F列的公式是随意编辑的且单元格的行数随编辑会增加,但是文字都是在[]里
回复

使用道具 举报

发表于 2016-11-30 20:16 | 显示全部楼层    本楼为最佳答案   
自定义函数,自己慢慢用吧
  1. Option Explicit

  2. Function getSum(rng As Range) As Double
  3.     Dim regx As Object
  4.     Dim strText$
  5.     Set regx = CreateObject("vbscript.regexp")
  6.     With regx
  7.         .Global = True
  8.         .Pattern = "\[.*?\]"
  9.         strText = Replace(Replace(.Replace(rng, ""), "(", "("), ")", ")")
  10.     End With
  11.     getSum = Evaluate(strText)
  12. End Function
复制代码


QQ图片20161130211613.png

评分

参与人数 2 +26 金币 +20 收起 理由
望帝春心 + 20 + 20 国宝大师,我来偷学了,哈哈~
苏子龙 + 6 神马都是浮云

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2016-12-2 10:45 | 显示全部楼层
Excel学徒123 发表于 2016-11-30 20:16
自定义函数,自己慢慢用吧

你好,首先谢谢你哈,这个怎么应用上去呢?那个单元格要等于什么呢?麻烦你上传下附件可以吗?谢谢哈
回复

使用道具 举报

发表于 2016-12-2 19:14 | 显示全部楼层
花小剑 发表于 2016-12-2 10:45
你好,首先谢谢你哈,这个怎么应用上去呢?那个单元格要等于什么呢?麻烦你上传下附件可以吗?谢谢哈

按alt+f11  然后新建模块,把代码复制进去,最后在单元格里面输入=getSum(单元格) ,单元格自己选取,就和你用其他公式一样
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-20 00:04 , Processed in 0.485083 second(s), 14 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表