我有一个脚本,我想在 MS Access 中运行,以将后期绑定(bind)的选定工作簿中的所有工作表导出到特定位置的各个 PDF 文件,其中 PDF 文件名是工作表的名称。以下是到目前为止我所拥有的内容,但我无法弄清楚导出代码是什么。我尝试修改 Excel VBA 代码 ( Excel VBA to Export Selected Sheets to PDF ) 来导出,但它在每一步都会返回编译错误。
Dim xls As Object
Dim wkb As Object
Dim wks1 As Object
Dim wks2 As Object
Dim wks3 As object
Set xls = CreateObject("Excel.Application")
Set wkb = xls.Workbooks.Open("\\EXCHSVR1\stone\Mold_Books\" & mold_id & "\" & Mid(Mid(strFlpath, InStrRev(strFlpath, "/") + 1), InStrRev(strFlpath, "\") + 1))
Set wks1 = wkb.Worksheets(1)
'code to export the first worksheet to "C:\test\" & wks1.name
Set wks2 = wkb.Worksheets(2)
'code to export the second worksheet to "C:\test\" & wks2.name
Set wks3 = wkb.Worksheets(3)
'code to export the third worksheet to "C:\test\" & wks3.name
最佳答案
根据您的评论,这是您面临的编译错误的一个示例:
发生这种情况是因为 xlTypePDF
是一个 Excel 常量,除非您设置对 Microsoft Excel 对象库的引用,否则 Access 无法识别该常量。
由于您想要使用后期绑定(bind),因此您可能不想将该引用添加到您的 VBA 项目中。在这种情况下,您可以做两件事。
- 在 Access 代码中声明常量:
Const xlTypePDF As Long = 0
然后您可以继续在代码中的其他位置使用该常量的名称,而不会触发编译错误。 - 或者在您的 Access 代码中使用常量的值 (0) 代替其名称。
并且您必须以相同的方式处理其他 Excel 常量,例如 xlQualityStandard
。
关于excel - 使用 VBA 代码将 Excel 工作表导出为单独的 pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38704032/