我有一个Excel文件,其中所有列都有col N
之前的列。我的问题是我想知道如何使用VBScript设置打印区域,直到列N
覆盖每一行,直到空白行。
答案 0 :(得分:1)
取决于您要使用哪一列来检查第一个空白行。这是一个用A列中的数据检查最后一行的示例:
Const xlUp = -4162
Const xlCellTypeBlanks = 4
' Get the last row...
Dim intLastRow
intLastRow = objWSheet.Cells(objWSheet.Rows.Count, 1).End(xlUp).Row
' Delete any rows with a blank column A...
objWSheet.Range("A1:A" & intLastRow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
' Get the new last row...
intLastRow = objWSheet.Cells(objWSheet.Rows.Count, 1).End(xlUp).Row
' Set the print area...
objWSheet.PageSetup.PrintArea = "$A$1:$N$" & intLastRow
答案 1 :(得分:0)
除非您的工作表在该空行之后有更多数据行,否则您只需使用UsedRange
属性:
Set xl = CreateObject("Excel.Application")
xl.Visible = True
Set wb = xl.Workbooks.Open("C:\path\to\your.xlsx")
Set ws = wb.Sheets(1)
ws.PageSetup.PrintArea = ws.UsedRange.Address