乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 225|回复: 12

VBa

[复制链接]

55

主题

190

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
410
发表于 2010-6-7 14:17:20 | 显示全部楼层 |阅读模式
如何从Visual Basic程序中打开.pdf文件
感谢您的帮助。。。
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2010-6-7 15:18:34 | 显示全部楼层
以Open adobe的形式打开以查看它,还是以在VBA中打开的形式打开它以对其进行操作
先验是这样的:
  1. Option Explicit
  2. 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
  3. Public Function OpenFile(ByVal FileName As String) As Long
  4.    OpenFile = ShellExecute(0, "Open", FileName, "", "C:", 1)
  5. End Function

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

使用道具 举报

55

主题

190

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
410
发表于 2010-6-7 15:56:05 | 显示全部楼层
我想按一个命令按钮,让它打开一个adobe pdf文件进行打印
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2010-6-7 16:01:13 | 显示全部楼层
好的,这样就可以了,只需将文件名传递给函数,它就会在adobe中打开PDF
回复

使用道具 举报

55

主题

190

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
410
发表于 2010-6-7 16:42:07 | 显示全部楼层
使用上面的示例,我如何将文件名传递给此函数
(在您方便的时候……)
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2010-6-7 16:48:33 | 显示全部楼层

  1. OpenFile "filenamegoeshere"
这么简单
回复

使用道具 举报

55

主题

190

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
410
发表于 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
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2010-6-7 17:41:56 | 显示全部楼层
这应该可以做到,但您可能还需要包括文件的路径。我只能建议你试试
回复

使用道具 举报

55

主题

190

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
410
发表于 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
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2010-6-8 11:22:03 | 显示全部楼层
您需要包括文件扩展名。
试试这个:
  1. Option Explicit
  2. 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
  3. Public Function OpenFile(ByVal FileName As String) As Long
  4.    OpenFile = ShellExecute(0, "Open", FileName, "", "C:\ALL_pdf_Cut_Sheets\Actuators", 1)
  5. End Function
  6. Sub file_get()
  7.    OpenFile "C:\ALL_pdf_Cut_Sheets\Actuators\ms8105a1008.pdf"
  8. End Sub
在表单中,为按钮调用文件执行click事件的操作
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-1 12:19 , Processed in 0.453991 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表