学习vba的方法
我觉得首先你要想明白学习VBA的的目的是什么,考虑题主本身做财务的,想在实际工作中的应用,那么目标应该就是提高工作效率,减少加班时间,从而更多的思考和提高自己,获取更高的收入。或者发现自己对编程感兴趣,转而成为程序员(逃)?
如何提高财务的工作效率呢?其实与其他工作相同,第一步并不是动手系统性地学习VBA,而是应该问自己为什么效率不高?或者效率也不低,还需要寻求更高的办法。我的建议是:
先拿Excel表格将你的主要工作按每天,每周,每月,每季度,每年的分类进行统计,并备注每项工作所花费的大概时间。这样可以看出来哪些重复性工作对你的工作时长影响最大,可以针对性的解决。注意强调的是重复性工作,因为非重复性工作往往不值得花大量的时间去优化和自动化。
第一步选择一项待优化的工作之后,还不要着急动手敲代码。要先将这项工作的输入和输出标准化、模板化。什么意思呢?举个简单的例子,现在要将前一天公司的销售数据以报表、图表形式提交上级,这里的输入就是系统中的原始数据,输出就是更新的报表和图表。标准化说的就是,原始数据、报表、图表的格式在日常使用时不应当修改其格式(除非必需时),只是将新的原始数据导入模板,然后刷新透视表。要多用条件格式、公式,尽量减少手工修改格式,尽量少改动公式,以减少工作量和出错的机会。
这个时候,你的工作量已经减少了大部分,可能只剩下一些打开关闭文件,复制粘贴数据等简单操作了,这些工作无法用模板、公式解决,就可以用VBA来做了。到了这个阶段,你的在这项工作上花时间已经可以缩短50%了。
这个时候,如果你有VBA的基础,使用宏录制功能,结合搜索引擎,可以解决大部分问题,花的时间可以缩短80%。而且在这时需要解决实际问题的学习,效果绝对比抱着一本大而全的宝典来得好。
减少重复性工作所花的时间
打好基础,基本的语法、对象需要掌握。
用解决问题的方式来学习。
总结起来就是下面三点: