gCal自定义函数 篇一:玩转Excel。凑数字,凑金额,凑发票,凑数据,凑数求和,凑数计算,Excel/WPS来实现
凑数求和是一种数学方法,它的基本思想是将一组数字中的一部分进行组合(凑数)后求和,以得到特定的结果。这种方法通常用于简化或加快计算过程。
目前该方法比较常用在发票凑数中,即知道发票总额,但是需要找到满足总额的分项数据。下面来演示下在Excel中的用法。
1. 不限定数据个数的凑数求和计算
在进行凑数求和计算时,在不限定求和数据个数时,计算结果一般会有多个,默认我们是需要一个结果就行,当然,也可以输入多个满足要求的结果,如下面动图演示:
不限定数据个数,结果为1个不限定数据个数,结果为多个若是在计算时,有些数据是必须要包含在计算式内的,建议先将计算目标值减去必须包含的数据,然后在进行计算。当然,在进行凑数求和计算时,数据中也有可能出现负数,在实际应用过程中,使用方法也一样,但是出现负数时,会大大增加计算量,可能会导致计算偏慢。
不限定数据个数,数据含负数,结果为多个上述结果可以看到,当数据量大时,且包含负数时,可能会存在多个结果。具体与数据个数和计算目标值相关。
在用上述函数计算时,若是不限定数据个数一般输出结果会比较快,即比较快能找到结果。默认输出结果数量为一个,可以通过手动输入,调整输出结果数量。
当然,若是不限定数据个数,且输出结果不多时,只要电脑配置不是特别差,一般不会卡。若是限定个数,可能会增加计算量,会计算偏慢。
2. 限定数据个数的凑数求和计算
上述演示的是不限定数据个数,如果我要求计算结果数字必须为10个,那能计算么,答案是可以的,具体看演示。
限定数据个数,数据含负数,结果为多个限定数据个数,数据含负数,结果为多个
从上述结果来看,限定个数后,也能正常输出结果。但是需要注意,演示的原始数据量较少,当数据量较多时,且无满足数据结果时,则会导致计算时间较长,无法输出结果。为了防止卡顿,本函数也对计算次数进行了限制,可以必满卡顿,根据需要,可以手动设定计算次数。
3.关于自定义函数的用法说明
函数使用说明函数用法说明:
a:表示数据源,必须填写。即在Excel/WPS中选择数据源,选择部分需要全部为数字;
b:表示凑数的和,必须填写。即计算目标值,可以手动输出,也可在表格中选择单元格;
c:表示组合数据数量,可选填写。即组合数据个数,不填写表示不限制数据个数;
d:表示输出结果数量,可选填写。即最终输出几个结果,不填写表示输出1个结果;
e:表示计算深度,可选填写。即程序计算次数,不填写表示少量计算,填写1~100,计算次数逐步增加,填写-1表述不限制,程序计算完成。
4.总结
函数算法部分采用了香川大神的vba凑数算法,但是香川大神算法对负数优化较差,为了保证计算速度,所以这部分又重新写了算法。若是对算法有兴趣,欢迎留言讨论。
通过上述方法的描述,可以快速完成凑数求和计算。若是函数有帮助,欢迎点赞或留言。
自定义函数需要通过安装插件才能使用,免费使用,插件地址我会放在评论区,也可以在我发表的其他文章中查看下载地址。若发现函数有错误,或有什么好的建议或想法,欢迎留言讨论。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
老师讲课我睡觉
校验提示文案
老师讲课我睡觉
校验提示文案