ARTICLE · 996733
Excel/WPS自定义函数【CountAdd】一键统计公式中所有加数个数
Excel/WPS自定义函数【CountAdd】一键统计公式中所有加数个数工作中是否遇到这样的场景:每个合同都有多次付款,需要统计每个合同支付了多少次款。而你的表格里全是多项累加公式,例如:"=125+986+590+539+658+321"。如何快速计算出结果有多少个加数求和得到。 今天分享一个VBA自定义函数CountAdd,快速计算出这条公式一共加了几个数。 一、函数核心功能详解 二、函数语法与参数说明 函数语法:
✅ 统计多项累加公式中加数的数量
✅ 只识别加号,自动忽略减号、乘除号、括号
✅ 多层嵌套括号公式精准计数
=CountAdd(单元格)参数说明:
三、实操案例
单元格公式内容 | CountAdd 返回结果 | 说明 |
|---|---|---|
空白单元格 | 0 | 空值不报错、不返回1 |
| 1 | 单个数字,1个加数 |
| 4 | 常规多数字求和 |
| 4 | 包含括号内加数,全覆盖统计 |
| 4 | 多层嵌套括号,精准计数 |
| 2 | 自动忽略减法,只统计加数 |
四、VBA代码
Function CountAdd(单元格 As Range) As LongDim f As StringDim cnt As LongDim i As Longf = mid(单元格.Formula, 2)'空单元格直接返回0If Trim(f) = "" ThenCountAdd = 0Exit FunctionEnd Ifcnt = 1For i = 1 To Len(f)If mid(f, i, 1) = "+" Thencnt = cnt + 1End IfNext iCountAdd = cntEnd Function
五、使用方法
打开 Excel,按 Alt+F11打开 VBA 编辑器;右键工作表→插入→模块; 复制本文的 VBA 函数代码,粘贴到模块中;
关闭 VBA 编辑器,返回表格即可直接使用公式!
往期推荐: