お世話になっております。
過去質問でお世話になったものです
前回のご回答を踏まえ、フォルダ内のpdfを一括印刷するような内容に組み替えてみたところ、
<1番目のループ>
pdf表示
↓
印刷
↓
次のファイル名を取得
<2番目のループ>
pdf表示
↓
印刷ダイアログ表示
↓
印刷
↓
次のファイル名取得
と、2番目~が必ず印刷ダイアログが出るようになってしまいました。
この1番目のループ同様、ダイアログを出さずに自動で印刷をループする流れを作りたいのですが
どうすればよいのでしょうか
試してみたこと
・プリンタ変更
これは特に変化なしでした。
・ファイルの保存先フォルダ変更
これも変化なしです
・adobe自体の設定が難点?
特に怪しい設定も調べても出てきませんでした
・ステップインで印刷がしっかりされた後、時間差で2週目に突入してみました (追加確認1
同じく印刷ダイアログが出現しました
何度もすみませんが、ご教示いただけますと幸いです。
以上、よろしくお願いします。
環境:
win10
excel2019
acrobat reader dc
VBA
1Sub フォルダ内一括印刷() 2 3 'Shell実行用の変数設定 4 Dim wshShellObj As IWshRuntimeLibrary.WshShell 'Shellオブジェクト 5 Set wshShellObj = New IWshRuntimeLibrary.WshShell 6 Dim strShellCommand As String 'Shellコマンド 7 Const folderPath = printFilePath = "C:\Users\●●●\Desktop\testfolder\プリントテスト\” 'フォルダパス 8 Dim printFileName As String 'ファイル名 9 Dim printFilePath As String 'ファイルパス 10 Dim printerName As String 'プリンタ名 11 12 13 printerName ="""DocuCentre-V C3375""" 14 15 '対象フォルダのPDFファイルをDir関数で取得 16 printFileName = Dir(folderPath & "*.pdf") 17 18 '拡張子が「.pdf」のファイルがある限り、処理をループ 19 Do While printFileName <> "" 20 'PDFファイルパスを設定 21 printFilePath = folderPath & printFileName '印刷するPDFファイルパス 22 23 'Shellコマンドを設定 24 strShellCommand = "AcroRd32.exe /t " & printFilePath & " " & printerName 25 26 'Shellコマンドを実行 27 wshShellObj.Run (strShellCommand) 28 29 '次のPDFファイル名を取得 30 printFileName = Dir() 31 Loop 32 33 'オブジェクトを強制開放 34 Set wshShellObj = Nothing 35 36End Sub

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/14 01:35