ms-access - 在报告中显示 PDF

标签 ms-access vba

我想动态显示 .pdf 文件,例如报告中的图片,它应该如下所示:

enter image description here

我已经尝试过使用网络浏览器,但它没有显示在预览中或当我打印报告时...

我还尝试了 ole 未绑定(bind)对象,也没有成功,这里是我在 Report_Load 事件中的代码:

Dim vPath As String

vPath = GetNewestDocument(Me!artNr)
'Returns path for pdf file, about:blank if there is no file.
If vPath = "about:blank" Then
        Me!PDFBrowser.visible = True
        Me.PDFBrowser.SourceDoc = vbNullString
Else
        With Me.PDFBrowser
        .OLETypeAllowed = acOLELinked
        .SourceDoc = vPath
        .SizeMode = acOLESizeStretch
        End With
End If

编辑:

“我想动态显示...”我的意思是动态更改报告中的 pdf 文件。

编辑2:

我刚刚发现 OLEunbound 对象的类型是嵌入的,但我认为应该链接这个对象,正如我在其他论坛中读到的那样:enter image description here

当我尝试更改时,出现错误:“此属性无法更改,因为它是只读的”

最佳答案

您可以获得 Adobe Acrobat 的许可版本(不是 Reader)并以编程方式控制它以捕获您想要的图像。

或者,您可以使用 VBA Shell Function调用命令行 PDF 转换器,如 2Jpeg以编程方式(必要时动态)将 PDF 转换为图像(请参阅 this ),甚至使用正确的驱动程序将 PDF“打印”为图像文件(请参阅 this )。

一旦有了图像文件,您就可以使用 VBA(也许使用 this)轻松地将创建的图像加载到 Access 表单中。 .

如果没有更多信息(以及我之前问题的答案),我目前无法提供更多建议,但我希望有所帮助!

关于ms-access - 在报告中显示 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48303493/

相关文章:

mysql - SQL查询语句

sql - 从 Access VBA 执行 SQL Server Pass-Through 查询

vba - Excel VBA 每第 n 行插入分页符

excel - 如何禁用细胞公式建议?

excel - 获取表格列 Excel VBA 的范围(或值)

vba - 改进 PasteValue 宏以使用 Cut

ms-access - Access VBA : Find item in combo box based on non-bound column

c# - 针对 MySQL 同时使用 MVC 应用程序和 MS Access 时记录被覆盖

sql - 更新 SQL MS Access 2010

vba - 设置范围数据表出错