krampaul82 发表于 2010-6-7 14:17:20

VBa

如何从Visual Basic程序中打开.pdf文件
感谢您的帮助。。。

Keith™ 发表于 2010-6-7 15:18:34

以Open adobe的形式打开以查看它,还是以在VBA中打开的形式打开它以对其进行操作
先验是这样的:
Option Explicit
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpszOp As String, ByVal lpszFile As String, ByVal lpszParams As String, ByVal lpszDir As String, ByVal FsShowCmd As Long) As Long
Public Function OpenFile(ByVal FileName As String) As Long
   OpenFile = ShellExecute(0, "Open", FileName, "", "C:\", 1)
End Function

后者为'如果不了解PDF结构和/或类型库和/或处理PDF文件的类,就不会发生这种情况。

krampaul82 发表于 2010-6-7 15:56:05

我想按一个命令按钮,让它打开一个adobe pdf文件进行打印

Keith™ 发表于 2010-6-7 16:01:13

好的,这样就可以了,只需将文件名传递给函数,它就会在adobe中打开PDF

krampaul82 发表于 2010-6-7 16:42:07

使用上面的示例,我如何将文件名传递给此函数
(在您方便的时候……)

Keith™ 发表于 2010-6-7 16:48:33


OpenFile "filenamegoeshere"
这么简单

krampaul82 发表于 2010-6-7 16:57:56

Option Explicit私有声明函数ShellExecute Lib;shell 32.dll“;别名;ShellExecuteA“;(ByVal hwnd As Long,ByVal lpszOp As String,ByVal lpszFile As String、ByVal lpszParams As String和ByVal lpszDir As String以及ByVal FsShowCmd As Long)只要公共函数OpenFile(ByVal FileName As String)一样长 OpenFile=ShellExecute(0,“Open”,FileName,“C:\ALL\u pdf\u Cut\u Sheets\Actuators\”,1)
结束函数是否像这样
sub file_get
OpenFile"ms8105a1008“
End Sub

Keith™ 发表于 2010-6-7 17:41:56

这应该可以做到,但您可能还需要包括文件的路径。我只能建议你试试

krampaul82 发表于 2010-6-8 10:14:26

无骰子…
Option Explicit
私有声明函数ShellExecute Lib“;shell 32.dll“;别名;ShellExecuteA“;(ByVal hwnd As Long,ByVal lpszOp As String,ByVal lpszFile As String、ByVal lpszParams As String和ByVal lpszDir As String以及ByVal FsShowCmd As Long)只要公共函数OpenFile(ByVal FileName As String)一样长 OpenFile=ShellExecute(0,“Open”,FileName,“C:\ALL\u pdf\u Cut\u Sheets\Actuators\”,1)
结束函数是否像这样
sub file_get
OpenFile"C: \所有pdf\u Cut\u Sheets\Actuators\ms8105a1008“
End Sub

Keith™ 发表于 2010-6-8 11:22:03

您需要包括文件扩展名。
试试这个:
Option Explicit
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpszOp As String, ByVal lpszFile As String, ByVal lpszParams As String, ByVal lpszDir As String, ByVal FsShowCmd As Long) As Long
Public Function OpenFile(ByVal FileName As String) As Long
   OpenFile = ShellExecute(0, "Open", FileName, "", "C:\ALL_pdf_Cut_Sheets\Actuators\", 1)
End Function
Sub file_get()
   OpenFile "C:\ALL_pdf_Cut_Sheets\Actuators\ms8105a1008.pdf"
End Sub
在表单中,为按钮调用文件执行click事件的操作
页: [1] 2
查看完整版本: VBa