前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VBA代码:打印时隐藏指定的单元格区域

VBA代码:打印时隐藏指定的单元格区域

作者头像
fanjy
发布2023-12-26 16:14:04
1540
发布2023-12-26 16:14:04
举报
文章被收录于专栏:完美Excel完美Excel

标签:VBA

如果你不想隐藏工作表中的某些单元格,但是又不想将这些单元格打印出来,那么下面的程序可以帮助你实现这一点。这个程序来自于mcgimpsey.com,辑录于此供有兴趣的朋友参考。

在要隐藏打印区域的每个工作表上,选择要隐藏的区域(可以是非连续的),并为其指定一个工作表级名称“NoPrintRange”。

按Alt+F11键,打开VBE,双击ThisWorkbook打开该代码模块,输入下面的代码:

代码语言:javascript
复制
Private Sub Workbook_BeforePrint(Cancel As Boolean)
 Dim vFontArr As Variant
 Dim oWkSht As Worksheet
 Dim rNoPrintRange As Range
 Dim rCell As Range
 Dim rArea As Range
 Dim i As Long
 Dim bOldScreenUpdating As Boolean
 
 Cancel = True
 With Application
   .EnableEvents = False
   bOldScreenUpdating = .ScreenUpdating
   .ScreenUpdating = False
 End With
 
 For Each oWkSht In ActiveWindow.SelectedSheets
   On Error Resume Next
   Set rNoPrintRange = oWkSht.Range("NoPrintRange")
   On Error GoTo 0
   If Not rNoPrintRange Is Nothing Then
     With rNoPrintRange
       ReDim vFontArr(1 To .Count)
       i = 1
       For Each rArea In .Areas
         For Each rCell In rArea
           With rCell
             vFontArr(i) = .Font.ColorIndex
               If .Interior.ColorIndex = xlColorIndexNone Then
                 .Font.Color = RGB(255, 255, 255) '白色
               Else
                 .Font.ColorIndex = .Interior.ColorIndex
               End If
               i = i + 1
           End With
         Next rCell
       Next rArea
       oWkSht.PrintOut
       i = 1
       For Each rArea In .Areas
         For Each rCell In rArea
           rCell.Font.ColorIndex = vFontArr(i)
           i = i + 1
         Next rCell
       Next rArea
     End With
   Else
     oWkSht.PrintOut
   End If
 
   Set rNoPrintRange = Nothing
 Next oWkSht
 
 With Application
   .ScreenUpdating = bOldScreenUpdating
   .EnableEvents = True
 End With
End Sub

这样,当你打印工作表时,不希望打印的单元格区域看不到内容。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-12-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档