事情的起因还是我加入了一个乒乓球QQ群说起,由于长期缺乏锻炼,肚子上的肥肉已经太明显了,于是想找人打打乒乓球,运动一下,毕竟是自己的一项特长嘛。加入群不久就有人问计算机的问题,于是奋勇报名,接下来自然是需要出力气的活了。
需求是要搞一个乒乓球比赛纪录并计算等级分的工具,类似世界排名之类的了。最初要求是用数据库实现。可是考虑到这些业余选手对数据库的熟悉程度,我还是放弃了这个设计,因为不论是Web方式,还是Windows程序,都需要后台配置一个数据库,另外如果没有网络空间的话,人家还得每次启动一个Jboss,太麻烦了。
于是第二个构想就是用VC++或者C#做一个小程序,数据用XML保存,可是SharpDevelop搞了半天界面后又放弃了,需要的控件比较多,太麻烦了,短时间根本搞不定,主要还是自己能力有限。
然后就产生了最后的方案,用VBA实现,Excel天生就是处理这样数据的,为什么不用呢,不用什么控件来显示输入好的成绩,人机互动只需要一个菜单,手里拿了一本《Excel 2003 与VBA编程 从入门到精通》,一天半的时间竟然也搞出来了,当然很多异常处理还不足,也没有锁定输出的单元格,不过这个不是用来卖的,自己人用一下,最后的结果是重要的。
利用一个周末的时间,交了一份VBA大作业,还是挺有成就感的,感觉对VBA的掌握也更好了,发文纪录一下!