提出需求:
今天收到一个客户提出的需求,要求在打印之后根据是否打印成功将数据复制到汇总表中。因为有几十张表,每次打印完成后再去手动复制非常繁琐,容易发生遗漏现象。只能要求我们帮忙写一个vba, 让系统自动完成这个任务。我们仔细查找了vba 所有的事件,vba不提供打印完成后的事件,只有打印前的事件。这样问题就来了,我们需要另外用代码来获取当前打印机的状态,但是我们花了整整一天查找了很多资料,ChatGPT都询问了,还测试了非常多的代码,发现不是状态获取不正确,就是无法运行。最终只能使用vb.net 才能获取到打印机的状态,客户没有管理员权限,最终只能拿出我的秘密武器了,使用vb.net免注册封装DLL,封装到excel里运行,最终客户非常满意,1000元成交了。
本案例知识点:
Com 类封装为免注册的Excel 文件运行
在打印前事件中写入定时运行程序
原始数据如下:
原始数据如下:
由于本文图片尺寸较大 请大家尽量收藏转发后 到电脑端大屏查看学习,效果更佳!
功能实现