人气 3168

Excel VBA 代码动态设置打印区域 [复制链接]

精益 2016-11-22 20:49:06
摘自:Excel技巧在Excel中设置打印区域,相信很多网友都会,按下图所示操作即可:
1479819015732745.jpg (57.68 KB, 下载次数: 0, 售价: 6 金钱)
但如何用VBA代码在Excel工作表中设置打印区域呢?
可以用下面的方法。
一、设置打印区域 方法一: 用PageSetup.PrintArea属性。代码如下: Sub SetPrintArea()
Sheet1.PageSetup.PrintArea = "A1:F15"
End Sub 上述代码将区域A1:F15设置为打印区域。如果要同时设置多个打印区域,可以将上述代码改为: Sub SetPrintArea()
Sheet1.PageSetup.PrintArea = "A1:F15,A20:F45"
End Sub 上述代码将区域A1:F15及A20:F45设置为打印区域,可以分两页来打印。 还可以使用变量来设置一个动态打印区域: Sub SetPrintArea()
PrintRow = 100
Sheet1.PageSetup.PrintArea = "A1:G" & PrintRow
End Sub 通过改变变量PrintRow的值来设置不同的打印区域。
方法二: 用Names.Add方法。当在Excel中设置一个区域为打印区域后,Excel自动定义了一个名称“Print_Area",因而可以通过定义名称的方法来设置打印区域,代码如下: Sub SetPrintArea()
Sheet1.Names.Add "Print_Area", Sheet1.Range("B2:G12")
End Sub 设置动态打印区域: Sub SetPrintArea()
Sheet1.Names.Add "Print_Area", Sheet1.Range("B2").Resize(12, 8)
End Sub 上述代码将B2:I13区域设置为打印区域,通过改变Resize(12, 8)的参数来调整打印区域的大小。
二、取消打印区域 将PageSetup.PrintArea属性设置为空: Sub ClearPrintArea()
Sheet1.PageSetup.PrintArea = ""  '空字符串
End Sub 或删除已定义的“Print_Area”名称: Sub ClearPrintArea()
On Error Resume Next
Sheet1.Names("Print_Area").Delete
On Error GoTo 0
End Sub
您需要登录后才可以回帖 登录 | 立即注册

QQ|手机版|精益人 ( 沪ICP备19004111号-1 )|网站地图

GMT+8, 2024-12-22 19:28 , Processed in 0.298633 second(s), 23 queries .

Powered by Lean.ren X3.5 Licensed  © 2001-2030 LEAN.REN