ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 9676|回复: 11

[求助] 计算式太长无法求和如何解决

[复制链接]

TA的精华主题

TA的得分主题

发表于 2017-4-15 23:36 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
如下图,使用计算式包含文字的自动求和函数,当计算式过长的时候,无法求和,请问如何解决


实例图片.png

TA的精华主题

TA的得分主题

发表于 2017-4-15 23:46 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2017-4-16 00:05 | 显示全部楼层
抢不到沙发!你要计算什么?图片太费力,有表格附件就让人容易看明白!或者弄个模板也行……

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-4-27 22:29 | 显示全部楼层
cxz0312 发表于 2017-4-16 00:05
抢不到沙发!你要计算什么?图片太费力,有表格附件就让人容易看明白!或者弄个模板也行……

抱歉,已上传附件,麻烦看看能否帮忙解决!不胜感激

示例文件.zip

17.12 KB, 下载次数: 40

TA的精华主题

TA的得分主题

发表于 2017-4-28 00:51 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2017-4-28 01:42 | 显示全部楼层
由于参数长度受限,用Evaluate构造自定义函数是不行了
那就直接把计算公式的字符串塞到单元格里吧
  1. Function myEvStr(Rng As Range) As String
  2.     With CreateObject("vbscript.regexp")
  3.         '.Pattern = "[^\d+\-*/().]+"
  4.         .Pattern = "(【.*?】)*"
  5.         .Global = True
  6.         .MultiLine = False
  7.         myEvStr = "=" & .Replace(Rng, "")
  8.     End With
  9. End Function


  10. Sub 按钮32_Click()
  11.   Dim i, r
  12.   r = Sheet3.Range("F65535").End(xlUp).Row
  13.   For i = 5 To r
  14.     Sheet3.Range(Cells(i, 7), Cells(i, 7)) = myEvStr(Range(Cells(i, 6), Cells(i, 6)))
  15.   Next i
  16. End Sub
复制代码



示例文件.rar

20.67 KB, 下载次数: 100

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-5-21 22:17 | 显示全部楼层
本帖最后由 felixplayer 于 2017-5-21 23:53 编辑
hqcola 发表于 2017-4-28 01:42
由于参数长度受限,用Evaluate构造自定义函数是不行了
那就直接把计算公式的字符串塞到单元格里吧

感谢,我尝试在工作表的多列计算结果,以下附件是我做的,请大神帮忙看看是不是这样操作,有几个问题想请教:

1、一个工作簿中,有很多表要计算很多列的结果时,必须要每个表、每一列都设置模块和按钮么,有点麻烦,能否每个表只设置一个按钮就能计算我想要的列的结果
2、空白的计算式后面不要出现“=”号



再顺便问一下,除了设置按钮外,能否在不用按钮的情况下,直接在计算式后面用某种公式直接引用前面计算式中【】之外的所有数字和符号,自动求和呢


1#现场工程量实测.zip

1.42 MB, 下载次数: 41

TA的精华主题

TA的得分主题

发表于 2017-5-22 15:54 | 显示全部楼层
felixplayer 发表于 2017-5-21 22:17
感谢,我尝试在工作表的多列计算结果,以下附件是我做的,请大神帮忙看看是不是这样操作,有几个问题想请 ...

1、多列计算其实一回事,写个循环依次处理罢了
2、空白单元格的问题加个判断即可
详见附件

表中留下一个按钮
先选中要计算的各列,然后按下按钮处理

1#现场工程量实测b.rar

1.41 MB, 下载次数: 114

TA的精华主题

TA的得分主题

发表于 2017-6-16 15:31 | 显示全部楼层
hqcola 发表于 2017-5-22 15:54
1、多列计算其实一回事,写个循环依次处理罢了
2、空白单元格的问题加个判断即可
详见附件

你好。修改什么,能够使计算式中的【】变成[]来计算。

TA的精华主题

TA的得分主题

发表于 2019-4-3 18:58 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
你好,这个宏的设置怎么操作
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-3-29 20:09 , Processed in 0.050674 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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