|
▼春まき さん:
>よろしくお願いします。XPパソコンにUSBで2台のプリンターにつないでいます。
>複数のシートの中の一部のシートだけ通常使ってない方のプリンターで印刷できるようにマクロボタンを作っています。マクロ記録を使い以下のコードを使いました。
>
> ActiveSheet.PageSetup.PrintArea = "$B$1:$Q$38"
> PaperSize = xlPaperB4
> BlackAndWhite = False
> Zoom = 75
> ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:="プリンタB on Ne01:", Collate:=True
>
>しかしこのマクロボタンを使うと以後通常使うプリンターがプリンターAに設定してあるのにプリンターBで印刷されるようになってしまします。
>その為一行コードを加えてみました。
>
> ActiveSheet.PageSetup.PrintArea = "$B$1:$Q$38"
> PaperSize = xlPaperB4
> BlackAndWhite = False
> Zoom = 75
> ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:="プリン ターB on Ne01:", Collate:=True
>Application.ActivePrinter = "プリンターA on Ne04:"
>
>すると今度は最初からプリンターAで印刷してしまい、プリンターBに切り替わらなくなりました。
>
>ボタンを押したときだけBで印刷し、印刷後Aの方をアクティブにしてくれる
>ようにするにはどうしたらいいでしょうか。
もしかしたらと思うんですが・・・
プリンタ名は本当にあってますか??
最初のマクロは "プリンタB on Ne01:"
後半のマクロは "プリンターB on Ne01:"
となってますよね?
一瞬なにかメッセージボックスを表示して印刷されてません?
>Application.ActivePrinter = "プリンターA on Ne04:"
の前後に
MsgBox Application.ActivePrinter
を入れてプリンタA→B→Aとしっかり
切り替わっているか
確認してみてはいかがでしょうか?
|
|