【发布时间】:2021-02-03 15:33:25
【问题描述】:
我已经尝试了很多方法来修复此错误。谁能看到为什么这段代码说找不到文件?
Sub PdfPwd()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim fTemp As String 'Defining Variables
Dim oPdf As String
Dim Pwd As String
fTemp = "C:\Users\JSmith.ODINSU\Documents\" & "Temp.Pdf"
oPdf = "C:\w2s\" & Sheets("w2 form").Range("q4").Value & ".pdf" 'Set Path and Name for Protected Output PDF here.
Pwd = Sheets("w2 form").Range("r4").Value 'Set appropriate Password here.
With ActiveSheet 'Making a Temporary Unprotected Pdf file.
.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=fTemp, _
Quality:=xlQualityStandard
End With
' fTemp = """" & fTemp & """" 'Putting extra "" around for command Parameter.
'Debug.Print fTemp
' oPdf = """" & oPdf & """"
'
' Pwd = """" & Pwd & """"
'Making Command String for making protected PDFs Using PDFtk tool.
cmdstr = "pdftk " & fTemp _
& " Output " & oPdf _
& " User_pw " & Pwd _
& " Allow AllFeatures"
Debug.Print cmdstr
Shell cmdstr, vbHide 'Executing PDFtk Command.
Application.Wait DateAdd("s", 2, Now) 'Allowing 2 secs for command to execute.
Kill Replace(fTemp, """", "") 'Deleting temporary files.
Application.ScreenUpdating = True
Application.DisplayAlerts = True
MsgBox "Finished", vbInformation
End Sub
这是我得到的文件路径。
pdftk C:\Users\JSmith.ODINSU\Documents\Temp.Pdf 输出 C:\w2s\10CARRACorrectedW2.pdf User_pw 123456 允许所有功能
当我将该行复制并粘贴到 cmd 并运行它时,一切正常。
【问题讨论】:
-
我假设它找不到文件
pdftk.exe- 尝试包含 EXE 文件的完整路径。
标签: vba runtime-error pdftk