几十张表打印后自动完成表格汇总 VB.NET转VBA封装打印机状态代码

405 次浏览

提出需求:

今天收到一个客户提出的需求,要求在打印之后根据是否打印成功将数据复制到汇总表中。
因为有几十张表,每次打印完成后再去手动复制非常繁琐,容易发生遗漏现象。只能要求我们帮忙写一个vba, 让系统自动完成这个任务。
我们仔细查找了vba 所有的事件,vba不提供打印完成后的事件,只有打印前的事件。这样问题就来了,我们需要另外用代码来获取当前打印机的状态,但是我们花了整整一天查找了很多资料,ChatGPT都询问了,还测试了非常多的代码,发现不是状态获取不正确,就是无法运行。最终只能使用vb.net 才能获取到打印机的状态,客户没有管理员权限,最终只能拿出我的秘密武器了,使用vb.net免注册封装DLL,封装到excel里运行,最终客户非常满意,1000元成交了。

本案例知识点:

Com 类封装为免注册的Excel 文件运行
在打印前事件中写入定时运行程序

原始数据如下:

file

汇总表如下:

file
由于本文图片尺寸较大 请大家尽量收藏转发后 到电脑端大屏查看学习,效果更佳!
功能实现

1. Vb.net 获取打印机状态的代码

file

2. 通过郑广学老师提供的功能强大,俗称“小黑瓶”来封装代码

file

3. 封装完成了,是不是非常简单呀

file

4. 现在我们就可以在vba中调用了

file

5. 接下来我们就在打印事件中使用 定时执行程序,这个在VBA175例实战教程里都有详细解说

file

6. 最后写上相关业务代码就完成啦

file

以上知识点在 郑广学VSTO插件开发火箭速成班-04.10 独家黑科技Excel单文件打包DLL免注册运行详细讲解
郑广学VSTO教程购买方式
淘宝下单地址(支持花呗)
郑广学VSTO课程云课堂网址
登陆后可免费试学前3节
好了,今天便先介绍到这,大家赶紧实际操作练习一下吧,有不懂的问题可以留言问小编呦!感谢支持Excel880工作室,还请多多转发,持续关注我们呀!
特别推荐使用VBA代码助手,再也不怕记不住代码
最后,像大家推荐郑老师的VBA代码助手(下载地址vbayyds.com)
只需输入关键字,就能将收藏过的代码整个带出来,太赞了

file

郑广学VBA课程云课堂网址

https://appwsjhyq485963.pc.xiaoe-tech.com/detail/p_61d43f56e4b01af413707392/8

淘宝下单地址(支持花呗)

https://item.taobao.com/item.htm?id=597656284129