第1个回答 2023-04-22
可以使用Adobe Acrobat应用程序来批量获取PDF页数的VBA代码。下面是一段示例代码:
VBnet网络
Copy code
Sub GetPageCount()
Dim acroApp As Acrobat.CAcroApp
Dim acroAVDoc As Acrobat.CAcroAVDoc
Dim acroPDDoc As Acrobat.CAcroPDDoc
Dim fileNames() As Variant
Dim pageCount As Long
Dim i As Long
'选择文件
fileNames = Application.GetOpenFilename("PDF Files (*.pdf), *.pdf", , "Select PDF files", , True)
'启动Acrobat应用程序
Set acroApp = CreateObject("AcroExch.App")
acroApp.Show
For i = LBound(fileNames) To UBound(fileNames)
'打开PDF文档
Set acroAVDoc = CreateObject("AcroExch.AVDoc")
If acroAVDoc.Open(fileNames(i), "") Then
Set acroPDDoc = acroAVDoc.GetPDDoc
'获取页数
pageCount = acroPDDoc.GetNumPages()
'输出页数
Debug.Print fileNames(i) & " : " & pageCount
'关闭文档
acroAVDoc.Close True
End If
Next i
'退出Acrobat应用程序
acroApp.Exit
Set acroApp = Nothing
End Sub
使用此代码,您可以选择要处理的PDF文件,然后将每个文件的页数输出到调试窗口中。请注意,此代码需要安装Adobe Acrobat应用程序才能正常工作。