您现在的位置是:首页 > Excel技巧>Excel VBA 代码动态设置打印区域

vba自动设置动态打印区域-Excel VBA 代码动态设置打印区域

发布于2022-04-150人已围观

摘自:Excel技巧

在Excel中设置打印区域,相信很多网友都会,按下图所示操作即可:


  vba自动设置动态打印区域 


但如何用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


相关文章

文章评论

表情

共0条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

标签云

站长特荐