咔片PPT · AI自动生成演示文稿,模板丰富、排版精美 讯飞智文 · 一键生成PPT和Word,高效应对学习与办公

问:平时设计表格是最害怕的是什么?

答:肯定是糊涂的小伙伴把里面该改的不该改的参数都给你改了,完了还贴心的给你按个保存,致使各位创作者欲哭无泪!!!所以各大网站都在手把手教你怎么保护自己的作品,这个前面的文章里也有讲述,这里就不copy啦。今天主要想保护的是页眉页脚,让别人打印时不能随心所欲,哈哈哈!!!

1、 工具

想达到这个目的必须要有VBA的加持,下面先解释一下用代码表示页眉页脚中的各项参数

A:工作表名称

F:工作簿名称

Z:工作簿路径

D:日期

T:时间

P:页码

N:总页码

2、 代码及解释

Sub headerfooter()

With ActiveSheet.PageSetup

.PrintArea = "" '打印区域设置为全部打印

.LeftHeader = "&""Arial""&B&10 &A" '左边页眉设置为工作表名称,字体Arial,字号10,加粗

.CenterHeader = "&""Arial""&B&10 &F" '中间页眉设置为工作簿名称,字体Arial,字号10,加粗

.RightHeader = "&""Arial""&B&10 &D &T" '右边页眉设置为时间和日期,字体Arial,字号10,加粗。如果想固定格式的话用后面的代码代替哦.RightHeader ="&""Arial,Bold" Format(Date, "mm/dd/yyyy") & Chr(10) & Format(Time, "hh:mm")

.Leftfooter= "&""Arial,Bold""&10 &P/&N" '左边页脚设置为页码和总页码,字体Arial,字号10,加粗

.Centerfooter="&""Arial,Bold""&10 &Z" '中间页脚设置为文件路径,字体Arial,字号10,加粗

End With

End Sub

下面我们运行一下看看效果

首先页眉

然后页脚

完美!!!

3、 如果想在页眉页脚的内容前面加点说明可以换下面一套

Sub headerfooter()

With ActiveSheet.PageSetup

.PrintArea = ""

.LeftHeader = "&""Arial""&B&10 &A"

.CenterHeader = "&""Arial""&B&10 & Spreadsheet Name: &F"

.RightHeader = "&""Arial,Bold""&10 & Print Time: &D&T" '需要调整格式就用这个.RightHeader = "&""Arial,Bold""&10 & Print Time:" & Format(Date, "mm/dd/yyyy") & Chr(32) & Format(Time, "hh:mm")

.LeftFooter = "&""Arial,Bold""&10 & Page: &P/&N"

.RightFooter = "&""Arial,Bold""&10 & Location: &Z"

End With

End Sub

验收时刻来啦!!!

页眉

页脚

4、 再说一下打印页面的设置

PS:下面这些可能不会全部上场,大家挑选使用!

'打印页面边距的大小设置

.LeftMargin = Application.CentimetersToPoints(1.8)

.RightMargin = Application.CentimetersToPoints(1.8)

.TopMargin = Application.CentimetersToPoints(2.8)

.BottomMargin = Application.CentimetersToPoints(2.3)

.HeaderMargin = Application.CentimetersToPoints(0.9)

.FooterMargin = Application.CentimetersToPoints(0.9)

'打印效果设置

.PrintComments = xlPrintNoComments '不打印表格中的备注

.PrintQuality = 1200 '打印质量

.CenterHorizontally = True '水平居中

.CenterVertically = True '垂直居中

.Orientation = xlLandscape '打印横板,或者用后面代码.pagesetup.orientation=1 1为横板,2为竖版

.PaperSize = xlPaperA4 '打印A4纸,或者用后面代码 .pagesetup.papersize=9 9为A4,8为A3

.pagesetup.zoom=80 '打印时页面缩放比例

.printout copies:=1, Collate:=True '双面打印

五、最后,将所有的代码写好后在workbook部分设置打印时调用,将VBA设置好密码,那么你的页眉页脚信息就安全啦!管它熙熙攘攘阳关道,你的页眉页脚就是稳如磐石不移!!!

Private Sub Workbook_BeforeClose(Cancel As Boolean)

ThisWorkbook.IsAddin = True

End Sub

Private Sub Workbook_BeforePrint(Cancel As Boolean)

Call 模块1.headerfooter

End Sub

Private Sub Workbook_Open()

ThisWorkbook.IsAddin = False

End Sub

首先,我们在打印的时候把页眉页脚全部删掉

干干净净

然后点击打印,这里用PDF示范。打印出来的PDF是不是页眉页脚都回来了,还是你的那一套哦!所以,别担心,让他们折腾去吧!