去年吧,我用EXCEL帮一个朋友做了一个中医诊所收费系统,最近他们上了新系统,鸟枪换炮了,我的这个小应用就光荣退休了,现在把它分享给大家。
设计前提:
原来他们是用手工开具收费收据,再根据物理收据把营收数据登记到EXCEL表里。这样的做法工作量大,重复劳动,而且也容易出错。
于是,我忍不住想做点什么,就象前面分享的一样。(Excel VBA 最简单的收发存登记系统,只有一种商品,你会怎么做?其实,本文分享的应用还在此之前,后续经过了升级,后来也改成EXCEL+ACCESS版了,这是后话,暂且不表)
设计需求:
1、减少重复劳动,比如直接在EXCEL表中登记,然后能直接打印出收费单。
2、有一些报表功能,适当地进行统计。
设计思路:
当然不能仅满足最基本的要求,那岂不是太Low了。于是,我就开动脑筋,以我使用各种ERP系统的经验,开始着手开发这个所谓的中医诊所收费系统,前后大概得有一两个月吧,具体记不清了,总算完工交付使用。涉及的表格、窗体、模块如下图:
1、为了数据安全,设置用户密码登录
2、一些输入项目进行预制,提高输入的准确性:
3、设计窗体收款界面
收款基本流程:录入客户姓名,依次点选收费项目各个明细项目,核对单价,如果与实收不符则进行修改,输入数量,点选收款方式,然后点添加,向下面的收费详情增加一条明细记录,可再次添加收费项目,最多6条(受打印单据条目限制),核对无误后点结算。如果勾选了“结算后立即打印收款单”则立即打印收款单,如果不勾选,则后续可以再补打收款单。
4、各种报表
(1)收入明细表,该表直接显示存放明细数据的EXCEL表,其实应该是用ListView显示的(实际情况是,我当时还不知道ListView这个玩意,也没有用ListBox做。)
(2)收银报表,用来查看、核对当天或某段时间的收款情况。
这个报表是用窗体做的,明细数据是用ListBox列表框做的,由于它没有表头,就在记录里第一条加了字段。
这里的收款方式采用了动态添加控件的方式。
(3)业绩查询
按医生进行分类查询,可以导出为EXCEL表,也可以同时打印出来。
基本介绍就说这么多,这个系统现在看来是非常粗糙的,肯定有不少BUG,以及优化提升的地方,最大的缺陷是数据存在EXCEL文件中,安全性非常低。
关于代码,我也不想去多解释了,涉及到的内容比较多,各种控件、自定义函数,部分我们以前都分享过。有兴趣的小伙伴可以自行研究。我这个代码肯定算不上是什么优秀的代码,算是我的第一个作品吧,不过能把各种预想的功能都实现、都能跑通,也是一件不容易的事,欢迎大家批评指正!
关键代码我放在第二条、第三条文章。由于代码较多,就贴了两个。需要完整代码的同学,可以索要示例文件。代码以示例文件为准,贴过来的代码我删除了很多空行,说不定会误删除正常代码。
技术交流,软件开发,欢迎微信沟通: