vba开发动态报表心得

这个项目上vba程序写了不少,不过也悟出了一些心得,对以后任何一门语言开发都有帮助。下面是我思考的一些开发体会。

1.溢出错误

之前写程序跑报表最常见的一个错误,就是因为行结束的标记是结果或者总计结果,然后我一行行的判断是否已经找到,当query插入的位置变化了,或者没有这个技术标记就出现溢出错误(我用integer来记录行号,最大值是32767)。这两天思考了下,其实可以不用这么做,现在我觉得用find方法直接去找结束标记,然后再用err对象去处理错误。这样可读性更高,也不会报表报错的情况。

2.query插入位置变化造成函数参数的修改

之前写了一个insert的sub以为比较高明,其实完全可以用find方法找到query的位置,这样子无论query插入位置怎么修改都不会造成代码的修改,也就不会耽误我那么多时间,好的设计真的非常重要。

3.query结构变化造成的修改

虽然我把拷贝query到报表的程序单独分离出来写成一个sub,但是改起来我觉得还是麻烦,我就是喜欢不断突破极限,现在我觉得有更好的方法。将query和报表的位置信息保存在一个数组里,在把数组作为一个参数传进一个sub里,那么以后该vba就变的非常容易,只要改一个数组就好了,修改调试时间大大减少,也极大的减少了复杂度。变化的部分已经完全被拆分出来了,变成了固定的。

4.即时总结

当我第一个程序就一个方法写的时候,后面碰到所有类似的问题我都会用同一个方法去做,不光是程序,还有生活中的其它问题,于是有时候重复过去的不一定是好的,现在我做的动态都是一种方法,现在好好反思觉得有了更好的方法,可是已经来不及了。那其实很多资深顾问也不见得更优秀,因为他们都只用一种方法去解决类似却不相同的问题,方法不一定是最好的。时刻保持探索学习的心态才能成长的更快,哪怕我已经干了十或者二十年年的ERP,这才是一个优秀的顾问。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值