需求说明
在日常合同管理工作中,经常遇见按公司汇总求和金额的问题,今天我们来解决关于分列多条件汇总的问题,即根据合同金额,以及收录金额和是否完成的标识,来汇总计算得到合同金额,已录收金额,未录收金额,其他金额。
本案例没使用VBA之前我每次做一次表要30分钟,隔几天就要做一次,vba代码写完后每次一秒完成统计。
这个案例我按老师的提示,在还不是很熟悉字典求和的情况下,只用了字典去重,然后结合vlookup和sum函数,也在vba里实现了这个一键汇总,希望各位新手也能学会!
知识点:
- VBA字典去重
- ExcelVBA单元格循环
- Vba中使用公式
由于本文图片尺寸较大 请大家尽量收藏转发后 到电脑端大屏查看学习,效果更佳!
如数据下图:
结果如下:
下面我们讲一讲基本步骤
循环数据区公司装入字典去重
1 、首先需要定义一些变量和字典对象,和大家一样,最开始这个字典对象很长,总是记不住,不过还好有工具可以帮助我们快速输入,安装VBA代码助手插件(vbayyds.com)后,只需要输入 dimd四个字母,然后空格就会得到提示 按下Tab键即直接输入字典的定义, 即使是第一天学vba的同学,也不怕记不住代码了!
2、 写循环语句,循环最大行,使用VBA代码助手输出字典单元格行循环 ,这里从第3行开始循环 ,输入Fori 空格即可得到完整提示,按下Tab键就可以直接输入3行代码
3 、将数据源的第3列装入字典的关键字key ,条目为空, 得到项目名称的不重复值
并装置输出到单元格
循环字典的关键字调用工作表函数完成汇总
4、接下来,循环字典的个数取出关键字(项目名称), 利用 VLookup函数,得到合同金额 用SumIfs函数 ,得到已录收金额,未录收金额,其他金额。
当然这个问题还有更好的解决方法,就是直接使用数组字典求和,不过新手的话,用公式可能更好理解!
案例文件下载地址
请关注微信公众号EXCEL880 公众号主页回复25202
好了,今天有关在Excel中分列汇总的问题便介绍到这,大家赶紧实际操作练习一下吧,有不懂的问题可以留言问小编呦!感谢支持Excel880工作室,还请多多转发,持续关注我们呀!
特别推荐使用VBA代码助手,再也不怕记不住代码
最后,像大家推荐郑老师的VBA代码助手(下载地址vbayyds.com)
只需输入关键字,就能将收藏过的代码整个带出来,太赞了
比如上面代码中的字典 数组输出之类都只需要打几个字就出来
我上面的整段代码 也可以收藏起来 下次类似问题
输入 考勤 2个字 就可以调出完整代码了 然后tab键即可输入