Note: The other languages of the website are Google-translated. Back to English

如何防止用户打印工作表?

在我们的日常工作中,工作表中可能包含一些重要信息,为了保护内部数据的扩展,部门将不允许我们打印它们。 在这里,我将讨论如何防止用户打印工作表。

防止用户使用VBA打印一张指定的工作表

防止用户使用VBA打印整个工作簿

Office选项卡在Office中启用选项卡式编辑和浏览,并使您的工作更加轻松...
Kutools for Excel解决了您的大多数问题,并使您的生产率提高了80%
  • 重用任何东西: 将最常用或最复杂的公式,图表等添加到您的收藏夹中,并在将来快速重用它们。
  • 超过20种文字功能: 从文本字符串中提取数字; 提取或删除部分文字; 将数字和货币转换为英文单词。
  • 合并工具:将多个工作簿和工作表合二为一; 合并多个单元格/行/列,而不会丢失数据; 合并重复的行和总和。
  • 分割工具:根据价值将数据分割成多个工作表; 一本工作簿可转换为多个Excel,PDF或CSV文件; 一列到多列。
  • 跳过粘贴 隐藏/过滤的行; 计数与求和 按背景色; 向多个收件人批量发送个性化电子邮件。
  • 超级过滤器: 创建高级过滤方案并应用于任何工作表; 排序 按星期,日期,频率等 筛选器 用粗体,公式,注释...
  • 超过300种强大的功能; 适用于 Office 2007-2021 和 365; 支持所有语言; 在您的企业或组织中轻松部署。

箭头蓝色右气泡 防止用户使用VBA打印一张指定的工作表

您可以应用以下VBA代码来保护要打印的特定工作表。

1。 激活您要禁用其打印功能的工作表。

2。 按住 ALT + F11 键打开 Microsoft Visual Basic for Applications窗口.

3。 然后在左边 项目浏览器,双击 的ThisWorkbook 打开模块,然后将以下代码粘贴到其中:

VBA代码:防止用户打印一张指定的工作表

Private Sub Workbook_BeforePrint(Cancel As Boolean)
'Update 20140625
Dim WsName As String
WsName = "Sheet1"
For Each xWs In Application.ActiveWorkbook.Windows(1).SelectedSheets
    If xWs.Name = WsName Then
    MsgBox ("You can not print this worksheet")
        Cancel = True
    End If
Next
End Sub

doc-prevent-printing-1

请注意: 在上面的代码中, Sheet1 是活动工作表,不允许您打印。

4。 然后保存并关闭此代码,现在当您尝试打印此特定工作表时,将收到以下警告。

doc-prevent-printing-1

备注:使用此代码,不允许仅打印特定的工作表,但可以照常打印其他工作表。


箭头蓝色右气泡 防止用户使用VBA打印整个工作簿

如果您需要防止用户打印整个工作簿,那么这里也有一条代码可以对您有所帮助。

1。 打开您的工作簿,您不允许其他人打印。

2。 按住 ALT + F11 键打开 Microsoft Visual Basic for Applications窗口。

3。 然后在左边 项目浏览器,双击 的ThisWorkbook 打开模块,然后将以下代码粘贴到其中:

VBA代码:防止用户打印一张指定的工作表

Private Sub Workbook_BeforePrint(Cancel As Boolean)
'Update 20140626
Cancel = True
MsgBox "You can't print this workbook"
End Sub

doc-prevent-printing-1

4。 然后保存并关闭此代码,并返回到工作簿,现在当您打印一个工作表或整个工作簿时,将不允许打印它们,并且会收到以下警告:

doc-prevent-printing-1


相关文章:

如何在Excel中打印多个工作簿?

如何在Excel中打印范围?

如何在Excel中快速打印当前页面?

如何在Excel中的一页上打印长列?


最佳办公效率工具

Kutools for Excel解决了您的大多数问题,并使您的生产率提高了80%

  • 重用: 快速插入 复杂的公式,图表 以及您以前使用过的任何东西; 加密单元 带密码 创建邮件列表 并发送电子邮件...
  • 超级公式栏 (轻松编辑多行文本和公式); 阅读版式 (轻松读取和编辑大量单元格); 粘贴到过滤范围...
  • 合并单元格/行/列 不会丢失数据; 拆分单元格内容; 合并重复的行/列...防止细胞重复; 比较范围...
  • 选择重复或唯一 行; 选择空白行 (所有单元格都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择...
  • 确切的副本 多个单元格,无需更改公式参考; 自动创建参考 到多张纸; 插入项目符号,复选框等...
  • 提取文字,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换...
  • 超级滤镜 (将过滤方案保存并应用于其他工作表); 高级排序 按月/周/日,频率及更多; 特殊过滤器 用粗体,斜体...
  • 结合工作簿和工作表; 根据关键列合并表; 将数据分割成多个工作表; 批量转换xls,xlsx和PDF...
  • 超过300种强大功能. 支持 Office / Excel 2007-2021 和 365。支持所有语言。 在您的企业或组织中轻松部署。 完整功能 30 天免费试用。 60 天退款保证。
kte选项卡201905

Office选项卡为Office带来了选项卡式界面,使您的工作更加轻松

  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!
officetab底部
按评论排序
注释 (5)
还没有评分。 成为第一位评论!
该评论由网站上的主持人最小化
这在理论上可行,但默认情况下,当您打开工作簿时,Excel 会禁用所有宏,这会阻止此代码执行并允许照常打印。
该评论由网站上的主持人最小化
这可行,但是当您通过电子邮件发送文件时,该端的用户可以打印它......这违背了目的......
该评论由网站上的主持人最小化
也许可以有一个覆盖(白色背景的文本框)来隐藏条目。 在上面说:“启用宏以查看内容”,按下按钮可移动文本框。

现在他们可以看到条目,但宏再次处于活动状态:-)
该评论由网站上的主持人最小化
这就是您强制用户启用宏以使用工作簿的原因。
该评论由网站上的主持人最小化
如何防止打印多张但不打印孔工作簿?
这里还没有评论
留下你的意见
以访客身份发帖
×
评价此帖子:
0   产品特性
建议地点

关注我们

版权所有 © 2009 - extendoffice.com。 | 版权所有。 供电 ExtendOffice。 | 网站地图
Microsoft和Office徽标是Microsoft Corporation在美国和/或其他国家的商标或注册商标。
受Sectigo SSL保护