1

我有数百个 Excel 文件保存在一个文件夹中。我想知道如何在 Visual Basic 中编写一些东西来将它们转换为 PDF。有没有办法调用 Excel 2010 的另存为功能将它们保存在不同的文件夹中?我已经检查了谷歌和这里,我能找到的只是对第三方应用程序的引用。

4

2 回答 2

2
 Dim excel As Microsoft.Office.Interop.Excel.Application
    excel = New Microsoft.Office.Interop.Excel.Application
    Dim tmpWorkbooks As Workbooks
    tmpWorkbooks = excel.Workbooks
Dim wb As Microsoft.Office.Interop.Excel.Workbook
    wb = tmpWorkbooks.Open(pathOfExcelFile)
    excel.Visible = False
  wb.Activate()
wb.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, fileName, , , , 1, 1, False, )
于 2012-06-26T14:50:18.857 回答
2

在 Excel 2010 中,您可以使用此 VBA 代码:

ActiveSheet.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:="C:\Temp\Workbook1.pdf", _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=True, _
    OpenAfterPublish:=False

当然,您需要Filename为您的机器设置正确的路径,并且当它使用时,ActiveSheet我想如果您的工作簿中有多个工作表,您需要遍历您的工作表。有关 ExportAsFixedFormat 函数的更多详细信息,请参阅MSDN

于 2012-06-26T14:54:00.750 回答