问题如下:
如下图:
可以看到。需要求和的列,下面有一空行(即底色为黄色的列),空行与空行之间的相隔数据是不同的,有3列、有4列、有5列。那么公式求和,就没有那么方便。需采用VBA一键操作。
代码运行的结果如下:
代码如下:
代码解析及思路:
1:把数据区所有的数据放入数组arr。
为什么nRow后面的数字进行了+1.是因为不加+的表达式为最后一个非空单位格,而本例最后非空单元格下方还有一列数据需要求和,所有加1
2:用for 循环遍历数组,当为非空时,用计数器原理m=m+arr(i,1)用m求非空列的和。
3:当数组为空时,把求和的m赋值给值为空的数组,然后再初始化m。
4:在相应的区域,再写入arr数组,此时arr数组的空列,已经有求和的值了。
点击关注,可以阅读更多与VBA 相关的文章
私信 VBA 可以获取文章中含VBA代码的Excle文件
閱讀更多 浮雲Excel分享 的文章