Excel 使用VBA打开Acrobat文件
我在论坛上读到: 并开始试验它。但是我认为这个函数根本没有加载。我不确定它背后的原因是什么——我认为它必须简单,并且可能与图书馆有关。是否有人可以帮助指出以下代码根本无法编译的原因(代码在立即执行时似乎没有运行,因为没有触发任何断点) 我加载的库包括Excel 使用VBA打开Acrobat文件,excel,acrobat,ole,vba,Excel,Acrobat,Ole,Vba,我在论坛上读到: 并开始试验它。但是我认为这个函数根本没有加载。我不确定它背后的原因是什么——我认为它必须简单,并且可能与图书馆有关。是否有人可以帮助指出以下代码根本无法编译的原因(代码在立即执行时似乎没有运行,因为没有触发任何断点) 我加载的库包括 Acrobat蒸馏器 Adobe Acrobat 10.0类型库 Acrobat扫描1.0类型库 执行此代码的计算机上安装了Acrobat Professional Public Function GetPDF() '(FilePath As
- Acrobat蒸馏器
- Adobe Acrobat 10.0类型库
- Acrobat扫描1.0类型库
Public Function GetPDF() '(FilePath As String) As Object
Dim origPdf As Acrobat.AcroPDDoc
Dim path1 As String
MsgBox ("Start")
path1 = Application.ActiveWorkbook.Path
path1 = path1 & "\31700100.pdf"
Set origPdf = CreateObject("AcroExch.PDDoc")
If origPdf.Open(path1) Then
MsgBox ("weee")
End If
origPdf.Close
Set origPdf = Nothing
End Function
使用以下内容创建模块:
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As
Long) As Long
Sub GetPDF()
Dim path1 As String
MsgBox "Start"
path1 = Application.ActiveWorkbook.Path
path1 = path1 & "\31700100.pdf"
ShellExecute 0, "Open", path1, "", "", _
vbNormalNoFocus
End Sub
在VBA中打开文档需要您具有Acrobat应用程序对象。一旦你在函数中有一个app对象,代码就会起作用
Public Function GetPDF (FilePath As String) As Object
Dim ArcoApp As New Acrobat.AcroApp
Dim OriPdf As New Acrobat.AcroPDDoc
Set ArcoApp = CreateObject("AcroExch.App")
Set OriPdf = CreateObject("AcroExch.PDDoc")
If OriPdf.Open(FilePath) Then
MsgBox ("weee")
End If
GetPDF = OriPdf
OriPdf.Close
AcroApp.Close
Set OriPdf = Nothing
Set AcroApp = Nothing
End Function
嗯,你添加的语句出现了语法错误。。。还是我做错了?@Isa在哪一行显示语法错误?我使用的是Excel 2007,没有任何错误。我使用的是Excel 2013。您建议的declare函数行在我复制并粘贴时突出显示为不可接受的语法。您需要重新编辑declare函数。复制和粘贴时,“下划线”标记将无法读取。只需删除“下划线”标记,并将Declare函数设置在一个长行中@伊萨