Private Sub Command1_Click()
'引用 microsoft excel 11.0 object library
Dim PageCount As Integer, excApp As Excel.Application
Dim excWb As Excel.Workbook, i As Integer
Set excApp = CreateObject("Excel.Application")
Set excWb = excApp.Workbooks.Open(CurrentProject.Path & "\test.xls")
excApp.Visible = True
With excWb.Sheets("Sheet1")
.PageSetup.PrintTitleRows = "$1:$1"
PageCount = (.HPageBreaks.Count + 1) * (.VPageBreaks.Count + 1)
'1 '这个是一般打印,直接全部打印出来,灵活性不够
'.PrintOut
'2 '这里就是可控制打印代码,标头,标尾,打印行数都可以设置
For i = 1 To PageCount
'ActiveWindow.SelectedSheets.......等效
Windows(excWb.Name).SelectedSheets.PrintOut From:=i, To:=i, Copies:=1, Collate:=True
Next
End With
excWb.Close False
Set excWb = Nothing
excApp.Quit
Set excApp = Nothing
End Sub