从Visual Basic 6打印Excel工作表

问题描述

我需要以编程方式将Excel电子表格发送到我们的认打印机。无需人工干预就能做到吗?

我可以使用PrintFile命令来打印文本文件而不会出现问题,但是我无法使Excel以这种方式打印。

如何在VB6中打印Excel文档?

解决方法

这是使用Excel打印的基本模板:

Private Sub Command1_Click()
   Dim ExcelApp As Excel.Application
   Set ExcelApp = New Excel.Application
   ExcelApp.Visible = False
   ExcelApp.Workbooks.Open "c:\temp\test.xlsx"
   
   'print the workbook
   Dim ExcelBook As Excel.Workbook
   Set ExcelBook = ExcelApp.ActiveWorkbook
   ExcelBook.PrintOut
   
   'print a worksheet
   Dim ExcelSheet As Excel.Worksheet
   Set ExcelSheet = ExcelApp.Sheets(1)
   ExcelSheet.PrintOut

   ExcelApp.Quit
End Sub

当然,您需要设置对Microsoft Excel X.X Object Library的引用。