VBA EXCEL根据日期设置打印范围

时间:2014-11-18 08:27:31

标签: excel vba date printing

基本上我的工作表每天都会更新,并希望能够将其设置为每周自动打印。每周都会说星期五将打印最近7天的数据(7天=最后7行)。

我在任务调度程序的帮助下管理,运行.vbs宏来自动打开Excel工作表,打印然后关闭。

如何将最后一步添加到此自动化中,即仅打印当前周数据而不是整个工作表。

所以我需要可指定的列范围,对于行范围,可能会与excel的TODAY函数一起使用吗?如果可能的话。

1 个答案:

答案 0 :(得分:0)

如果总是最后7行,那么

Dim XLApp
Dim XLWkb
Set XLApp = CreateObject("Excel.Application")
xlapp.visible = true
xlapp.workbooks.open "C:\Users\User\Desktop\luboil.xlsx"
    Dim LastRow As Long
    Dim LastCol As Long
        LastRow = xlapp.activeworkbook.worksheets("sheet2").Range("A" & .Rows.Count).End(xlUp).Row
        LastCol = xlapp.activeworkbook.worksheets("sheet2").Cells(LastRow, Columns.Count).End(xlToLeft).Column
        xlapp.activeworkbook.worksheets("sheet2").PageSetup.PrintArea = xlapp.activeworkbook.worksheets("sheet2").Range(Cells(LastRow - 7, 1), Cells(LastRow, LastCol)).Address
xlapp.activeworkbook.worksheets("sheet2").printout
       xlapp.activeworkbook.worksheets("sheet2").PageSetup.PrintArea = ""
xlapp.activeworkbook.close
xlapp.quit