[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『印刷の順番を変えるには?』(真岡)
Sheet1に印刷のマクロを作成してもらったのですが、シート2⇒シート3の順番で印刷されてしまいます。 これをシート3⇒シート2の順番に印刷されるように変更したいのですが、Sheet2と Sheet3の数字を逆にしてもSheet1とSheet2が印刷されるだけです。 どこをどう変更するのですか? 修正をお願いするより勝手にコードを書き換えようかと思っているのですが、どうにか なりますでしょうか? よろしくお願いします。
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Sheets("Sheet2").Select ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Sheets("Sheet3").Select End Sub
Sheets(Array("Sheet3", "Sheet2")).PrintOut End Sub
これで出来そうな感じです。真岡
↑できますか?? PrintPreviewで試すとシート2⇒シート3の順番になりますが。
単純に、こんなのではどうでしょうか。 Sub test() Dim i As Long For i = 3 To 1 Step -1 Sheets("Sheet" & i).PrintPreview Next End Sub
(usamiyu)
Sheet1 にボタンがあるすると、押されたときはSheet1 がアクティブですから、
> ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Sheet1 が印刷される
> Sheets("Sheet2").Select > ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Sheet2 が印刷される
> Sheets("Sheet3").Select Sheet3 は選ばれただけ。印刷されない
が元の動作だと思います。ですから、Sheet2 と Sheet3 を入れ替えても、 Sheet1 と Sheet3 が印刷されるのだと思うのですが・・・。
指定のシートを印刷するのは Sheet("Sheet1").PrintOut Copies:=1, Collate:=True だけで十分ですから、Sheet3とSheet2 だけをを印刷するには、
Sheet("Sheet3").PrintOut Copies:=1, Collate:=True Sheet("Sheet2").PrintOut Copies:=1, Collate:=True
のようにしてできるかと思います。 3,2,1 の順に全部印刷するのであれば、usamiyu さんのやり方でできますね。 (Mook)
複数シートをSelectedSheets.PrintOutで印刷する場合には、 基本的にシートの並び方に依存するはずです。 だから、シートを印刷したい順番に並べておいて、印刷したいシートを選択して マクロ実行、というのが近道かも。 念のため。 [[20030829122226]] 『ブック全体を印刷してもシートの並び順に印刷され』(あ) (みやほりん)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.