模拟打印事件实现打印前后处理页面

  • 变量声名
  • 工作表打印函数

在有一些页面的打印时,需要根据页面内容做一些签字、盖章等体现审批、权限的操作,这些东西不希望公开给操作的人员,仅由系统根据数据状态进行处理,下面的函数即可以实现在打印前显示图片,打印后又隐藏的操作,也可以修改某一单元格中打印和显示的内容。

变量声名

'在模块中声名全局变量
Public isRealPrint As Boolean

工作表打印函数

Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Not isRealPrint Then' 将你打印前的处理代码放在这里isRealPrint = TrueRange("A1") = "OK" '打印出的此单元格的内容'Sheets("打印及查询").[C12] = ""'Sheets("打印及查询").Shapes("图片 1").Visible = msoTrue'Sheets("打印及查询").PrintOut ' 真实的打印 会再一次进入BeforePrint事件。但由于isRealPrint全局变量已经设置为了True, 所以只是打印而已
ActiveSheet.PrintOut'将你打印后的处理代码处理放在这里Range("A1") = "printed"    '打印后单元格中的实际内容'Sheets("打印及查询").Shapes("图片 1").Visible = msoFalse'Sheets("打印及查询").Range("c12").Formula = "=IF(ISERROR(VLOOKUP(K2,数据源,10,FALSE)), ,IF(VLOOKUP(K2,数据源,10,FALSE)=0,CHAR(127),VLOOKUP(K2,数据源,10,FALSE)))"Cancel = True      '取本次打印isRealPrint = False'处理打印时间If Environ("username") = "wdxu" Then'满足条件的其它打印后的操作End If
End If
End Sub

——专注办公软件的二次开发及培训,你有问题,我有思路!
——微博、微信、CSDN同号:w_dexu
——转载请注明出处!

扫码加微信

利用打印事件实现打印表格受控签字盖章相关推荐

  1. 简单单据打印和列表打印开发

    单据打印开发 在*UIModelActionExtend.cs里加代码         private void PrintClick_Extend(object sender, UIActionEv ...

  2. WPF安装打印机驱动后PrintDialog 执行打印事件

    原文:WPF安装打印机驱动后PrintDialog 执行打印事件 WPF可以很好的利用流文档来实现打印预览和PrintDialog 实现打印功能,但是我在这只是写了一个很简单的打印功能演示. Page ...

  3. ASP.NET MVC5+EF6+EasyUI 后台管理系统(92)-打印EasyUI 的datagrid表格

    前言 应用系统有时候需要打印Datagrid的表格内容,我们本节就来学习打印datagrid内容 打印主要使用:web打印(我们之前有讲过web打印插件jqprint) + 将datagrid重新编制 ...

  4. 使用vue-print-nb打印element table时表格打印不全的问题

    elment的表格设置宽度为100%之后打印还是不能将表格打印完整 如下图 1.寻找问题 为什么会出现这种情况,打开控制台查看代码 原来是el-table 会计算100%宽度为具体多少px 然后再计算 ...

  5. 表单打印html代码,Html表格代码实现打印

    利用JS技术实现打印HTML表格 通常在浏览网页的时候,网页上总是出现一些和内容无关的内容,在打印的时候,要是把整个网页都打印下来,总会有些不方便...所以在有需要打印的网页上稍微设置一下打印页是很有 ...

  6. php可以打印一个页面,利用html实现分页打印功能的实例详解

    本篇介绍利用html实现分页打印功能的实例详解,有些不想打印出来的分页打印的都可以应用这类样式进行控制 在非打印时是无效的. 页面打印 /* 应用这个样式的在打印时隐藏 */ .noPrint { d ...

  7. 利用WebBrowser实现Web打印的分析

    利用WebBrowser实现Web打印的分析 原文:利用WebBrowser实现Web打印的分析 WebBrowser是IE内置的浏览器控件,无需用户下载.本文档所讨论的是有关IE6.0版本的WebB ...

  8. python逐行读取数据时出现错误_Python利用逐行读取readline()打印出现空行的解决办法...

    Python Python开发 Python语言 Python利用逐行读取readline()打印出现空行的解决办法 在利用readline()进行逐行读取文件的时候,我们一般使用以下程序: f=op ...

  9. 利用iframe实现局部打印(区域打印)

    利用iframe实现局部打印(区域打印) <template><div id="test-page"><!-- 额外元素 --><div ...

最新文章

  1. 面对互联网一线大厂,这些技术你需要了解!
  2. php 执行系统命令函数
  3. 插入排序--希尔排序
  4. id文本框适应文字_Indesign中对同一行文字进行分行缩排的操作方法
  5. 世界排名前20的大学毕业生去做银行柜员,柜员工资是不是很高?
  6. idea @Data 不起作用找不到 相关的注解
  7. Centos7中Memcached安装使用说明
  8. getOutputStream() has already been called for this response异常的原因和解决方法[转]
  9. Emacs使用Tramp远程编辑服务器上的文件
  10. Grails集成Quartz插件实现定时任务(Job)
  11. java常见的异常_Java常见的10个异常
  12. 常用回归评价指标:均方误差(MSE)、均方根误差(RMSE)、平均绝对误差(MAE)、平均百分比误差(MAPE)、绝对系数R2
  13. 语料标注平台BRAT安装说明
  14. P1526 [NOI2003] 智破连环阵 题解
  15. Android攻城狮AsyncTask
  16. 甲骨文携手各界共庆Java 20周年
  17. 爬虫案例 --- Python 爬取淘宝数据存到数据库
  18. (已解决)微信小程序调查问卷所有题放在一个页面上
  19. GO语言开发高性能网络通信服务
  20. tomcat启动bat文件闪退解决方法

热门文章

  1. 小学计算机课信息就在我身边教案,三年级信息与技术身边信息技术教案
  2. JS中的some()方法
  3. 北京龙泉寺,学霸寺院,低于985好意思进吗?
  4. 【数学建模美赛】【LaTeX】论文模板
  5. 【考研计算机网络】课堂笔记3 第三章 数据链路层_Data Link Layer
  6. 内核编译出现Memtest86+ needs a 16-bit boot, that is not available on EFI, exiting,无法启动内核
  7. google chrome浏览器离线包20190326
  8. matlab 传递函数转化差分方程,从传递函数到差分方程的转换
  9. 通用服务网格框架Kuma开源了,可运行于任何平台!
  10. html5卷轴动画制作,使用纯CSS3构建的3D卷轴动画特效