下記のコードで、指定したpathのPDFファイルを特定のプリンターで紙出力を自動的に実行するコードを作成しております。
これを仮に実行すると何もerrorが出力されず、Adobe Acrobat reader DCの初期ホーム画面が立ち上がるのみで、紙が出力されません。
尚、ライブラリでWindows Script Host Object Model
には適切にチェックされており、下記のPDFから下記指定のプリンターに対して手動で出力すると問題なく紙面出力ジョブが転送されます。
何か、考えらえる問題点はございますでしょうか?
お力添えの程、宜しくお願い申し上げます。
vba
1Sub openFile() 2 3 Dim strPDFName As String 4 Dim strFolderPath As String 5 strFolderPath = Cells(2, 6).Value 6 strPDFName = Dir(strFolderPath & "*見積*") 7 8 Dim wshShellObj As IWshRuntimeLibrary.WshShell 9 Set wshShellObj = New IWshRuntimeLibrary.WshShell 10 Dim strShellCommand As String 'Shellコマンド 11 Dim printFilePath As String 12 printFilePath = strFolderPath & "\" & strPDFName 13 Dim printerName As String 14 printerName = "\rmad03\FX DocuCentre-VI C5571(70)" 15 Debug.Print(printerName) '\rmad03\FX DocuCentre-VI C5571(70) on XXXであることを確認 16 Debug.Print(printFilePath) '正しくPathが出力されていることを確認 17 18 strShellCommand = "AcroRd32.exe /t " & printFilePath & " " & printerName 19 wshShellObj.Run (strShellCommand) 20 21 Set wshShellObj = Nothing 22 23End Sub
解決するかは分かりませんが、strShellCommandのファイルパス、プリンタ名はダブルクォーテーションで括るようにされた方がよいと思います。
少なくともプリンタ名にはスペースを含んでるようなので。
回答1件
あなたの回答
tips
プレビュー