|
猫おじさんと申します。
現在、印刷で悪戦苦闘しております。
約400程のファイルがあり、1つずつ開いて、両面印刷をしたいと考えています。
最初の1枚だけプリンタの設定を両面印刷にすれば良いと、タカをくくっていたのですが、プリンタの両面片面の設定は、シート毎に規定されていることに気づきました。(全部、片面印刷指定で作ってしまいました。)
いろいろ調べたところ、プリンタの設定(プリンタドライバ)はマクロで直接命令できないため、SendKeysで行うとのことで、マクロを作ってみました。
ところが、下記を実行すると、最初に送った"S"が、プレビューダイアログに送られず、エクセルシートやVBAエディタに送られてしまう等さんざんです。
フォーカスさせようとして、
MyID=Shell(Wb開いたファイル,vbNormalNoForcus)
とかを行っても、エラーになってしまいます。
プレビューダイアログをフォーカスする方法をご教示頂ければ幸いです。
また、シート毎に片面印刷指定となっているものを、両面印刷出来れば、SendKeys等の方法には、こだわっておりません。
よろしくお願いいたします。
Sub test2()
For II= 1 to 400
ファイル名=nantoka & II
'Str 開くファイル名="D:\hogehoge\hugahuga\" & II
'Set Wb開いたファイル = Workbooks.Open(Filename:=Str開くファイル名)
'↑とりあえず、ファイルを一つづつ呼び出すことは出来てます。
'プレビュー設定ダイアログ
Application.Dialogs(xlDialogPrintPreview).Show
Application.Wait Now + TimeValue("00:00:03")
With ActiveSheet.PageSetup
SendKeys "S", Wait
SendKeys "{TAB}", Wait
End With
'ファイルを閉じる
Next II
End Sub
|
|