首页 > 解决方案 > 如何定义特定应用程序以从 excel 打开 pdf

问题描述

我想自动打开使用动态超链接定义的 pdf,但使用用户的 DEFAULT pdf 编辑器,但无法理解如何在下面打开文件的代码之外执行此操作

我还有其他代码来保存 pdf,它会自动保存它并在每个用户的默认程序中打开一个文件。但我不知道如何做相反的事情,并且有一个通过动态超链接搜索和找到的文件 - 然后将允许他们更新。

这是为了快捷方式打开各种文件夹,手动坐席,然后打开文件。理想情况下,我想自动化。

这是我到目前为止的代码,但只能在 Adob​​e 中打开,而不是默认程序 - 这可能是我 PC 上的设置,还是缺少代码?

Dim ws As Worksheet: Set ws = ThisWorkbook.Worksheets("TNR Report")
Dim r As Range: Set r = ws.Range("A82") ' this defines the actual path and filename to be searched for

Dim strHyperlink As String
On Error GoTo CannotFindFile
strHyperlink = r.Value
ThisWorkbook.FollowHyperlink strHyperlink

文件需要以细微差别打开以使用户能够编辑和更新“记录”,但只能在阅读器中打开,这没有用,并且有点违背代码的目的。

标签: excelvba

解决方案


2种可能性:

  1. Nuance设为Windows 中打开 PDF 文件的默认应用程序。
  2. 使用 shell 命令以文件名作为参数启动细微差别

    Shell """C:\Path To Nuance\Nuance.exe"" ""C:\Path To PDF\pdffile.pdf"""
    

推荐阅读