加载宏在哪里(宏怎么下载后怎么办)

朋友们,你们好!首先,祝大家中秋节快乐!
今天给大家分享的是关于excel中超长计算公式的求解 。
前段时间分享了一篇文章,关于如何在excel中使用[EVALUATE]函数自动计算表达式的结果,以及如何支持带注释的公式(点击访问) 。
但是这种方法有两个缺点:
1.注释的位置必须统一,要么在数值之前,要么在数值之后,否则结果会是错误的 。
【加载宏在哪里(宏怎么下载后怎么办)】
2.如果公式太长,结果会是错误的 。
以上两个痛点,最重要的是第二个 。但是作为建筑行业的从业者,在需要手工计算工程量的时候,难免会遇到一些复杂的情况,编写超长的计算公式 。针对以上两个痛点,写一个自定义函数来解决这个问题,给大家演示一下效果 。
一.加载项
因为我业余水平有限,写的函数代码很长,不方便直接发到文章里,所以做了一个add-in文件 。下载后直接加载到excel中,就可以直接使用了 。以下是外接程序的演示 。
二、函数的使用
将自定义函数加载项文件加载到excel中时,可以像使用excel的内置函数一样使用该函数 。使用此功能,此功能的特性:
1.可以计算超长字符的公式;
2.对标注内容的位置没有要求,可以随意在计算公式中进行标注;
3.计算公式支持excel内置函数;
4.可以像使用内置函数一样直接引用单元格,这样就不受计算公式和结果单元格相对位置的影响 。
第三,移植功能
如果在文件中使用了外接程序的函数,在将文件发送给其他人后,如果没有加载自定义函数的代码,结果将显示错误 。如何把这个功能和文件放在一起?
需要把自定义函数的代码放到需要这个函数的文件中 。下面是操作演示:
1.首先在VBE编辑器中,打开add-in文件的自定义函数代码,全部复制;
2.在需要该函数的文件中,在VBE界面插入【模块】,然后将代码粘贴到模块中;
3.取消外接程序;
4.可以正常使用这个功能,功能也是随文件的 。只要打开支持VBA的excel,就可以正常显示和使用 。
第三,获取功能
以上,我把这个函数的演示、使用和移植都介绍了一遍 。需要该功能的朋友可以在下载文件后按照上面的操作来达到自己想要的效果 。
!!!如何获取文件:
1.喜欢评论和分享;
2.后私信发送关键字:表情
第四,编写这个自定义函数的想法
如果你只是想使用这个功能,你可以在这里看到这篇文章 。下面是这个自定义函数的原理 。
由于[EVALUATE]函数不支持超过256个字符的公式,我们将通过公式拆分对一个超长的公式进行拆分、简化和计算,最终使其长度小于256个字符,然后使用[EVALUATE]函数计算结果 。
那么规划公式由几部分组成呢?
清除标注信息→将函数公式部分转换为结果→将括号部分转换为结果→得到一个没有括号的纯四则运算公式→如果公式长度大于256个字符,从开头截取一段小于256个字符的公式,转换为结果,替换到公式中;重复此操作,直到公式长度≤256个字符 。
1.清除计算公式中的注释信息 。
文字占用公式长度,会影响计算,所以第一步要清除注释内容,这是简化公式的第一步 。
2.将计算公式中的函数和公式转化为结果 。
函数有括号,有些函数的参数不能提前转换成结果 。因此,在简化括号的计算之前,需要将函数的公式部分转换为结果,并用结果替换原来的公式部分 。
3.简化括号
四种运算中,圆括号的运算层次较高 。为了避免结果出现误差,需要按照四则运算的规则,按照一定的顺序进行计算和简化 。
简化括号,难点在于判断括号的个数以及左右括号是哪一对,尤其是遇到复杂的括号时 。如果判断错误,计算结果就会错误 。只有判断正确,才能把一对括号里的内容提取出来,正确转换成结果,再导入公式 。
然后一步一步重复这个操作,直到所有的括号都被简化,得到一个没有括号的四则运算公式 。
4.简化计算公式
如果经过上述操作后,最终的简化公式仍然大于256个字符,那么公式将被拆分成无数个带加减符号的段 。按照从左到右的顺序,乘除部分会先算成结果,再代入公式 。然后,重复上述操作,直到公式长度符合要求 。
经过以上四步,几乎所有最长的计算公式都可以简化 。然后,只要是excel单元格中可以输入的计算公式,都可以用这个自定义函数进行计算 。


推荐阅读