EXCEL 複数シートの複数頁の印刷順を変更したい

このQ&Aのポイント
  • EXCELファイルに複数のシートがあり、シートごとの印刷順を変更したい場合、手作業で順番を変える必要があります。
  • PDF印刷後に手作業で順番を編集するのは面倒です。一度の印刷でシートの順番通りに印刷したいです。
  • シート内の印刷順を記憶してやる方法もありますが、数十枚の印刷画面を指定してPDFファイルを作成し、結合する手間が発生します。
回答を見る
  • ベストアンサー

EXCEL 複数シートの複数頁の印刷順を変更したい

あるEXCELファイルに、 SHEET1 0頁目 SHEET2 印刷設定(1,4,7頁) SHEET3 印刷設定(2,5,8頁) SHEET4 印刷設定(3,6,9頁) SHEET5 10頁目 というシートがあります。 これをシート全てを印刷とすると、 0,1,4,7,2,5,8,3,6,9,10 と印刷されます。 現在これをPDF印刷したのちに、手作業で、0,1,2,。。。と 順番通りに編集を毎回しております。 これをPDF表示時点で0,1,2,。。。とならないものかと 悩んでおります。 これは、1例ですので、頁総数が10倍以上になったり、イレギュラー になったりするのを毎回PDF更新ソフトで順番変更しております。 これを是非、一回の印刷でこの順番通りに印刷できないものかと 悩んでおります。 SHEET内印刷頁を記憶して(別シートに記述して)やる方法は、 いくつか見つけたのですが、結局一回毎の印刷になるので、 数十枚印刷画面を指定して、作成されたPDFファイルを、今度は 一つのファイルに結合するという作業が発生するというこのに なってしまいます。 SHEET毎にフォーマット(列数が多かったり幅指定が相違したりして おります)が異なるため、一つのシートにコピーするということも できません。 プリントアウト前のスプールをVBA上で指定できれば可能かと 思っているのですが、全くできない状態です。 どうにかこの問題を解決できる案がございましたら、ご教授 願います。 因みに、VBAは問題なくつかえる技術はあるつもりです。 よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

強引な手段ではありますが、 ページごとにシートを分けてやるのが手っ取り早いかと。 やっつけ仕事で申し訳ないですが、例えば シート「pages」を用意して、 A列にページ番号、B列にシートの名前、C列に範囲・・・   1  SheetA  A1:H5   2  SheetB  T1:AA5   3  SheetA  AA1:AH5 などのように持たせ、以下、走らせます。 Sub Sample() Dim NB As Workbook, WB As Workbook Dim NS As Worksheet, WS As Worksheet Dim Arr() As String: ReDim Arr(0)   Set WB = ThisWorkbook: Set WS = WB.Sheets("pages")   Set NB = Workbooks.Add   For i = 1 To WS.Cells(WS.Rows.Count, 3).End(xlUp).Row     Set NS = NB.Worksheets.Add(After:=NB.Sheets(NB.Sheets.Count))     NS.Name = i     Arr(UBound(Arr)) = i     ReDim Preserve Arr(UBound(Arr) + 1)     WB.Sheets(WS.Cells(i, 2).Value).Range(WS.Cells(i, 3).Value).Copy       NS.Range("A1").PasteSpecial Paste:=xlPasteColumnWidths       NS.Range("A1").PasteSpecial Paste:=xlPasteAll   Next   ReDim Preserve Arr(UBound(Arr) - 1)   NB.Sheets(Arr).Select   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _                   Filename:= C:\フルパス.pdf", _                   Quality:=xlQualityStandard, _                   IncludeDocProperties:=True, _                   IgnorePrintAreas:=False, _                   OpenAfterPublish:= False End Sub など。 Acrobat をお持ちなら   http://www.fastclassinfo.com/entry/vba_pdf_combine のような手段もあります。 まぁ、基本的にどこかで手間はかかりますよ。

Kuronari12
質問者

お礼

ありがとうございます。 ですよね~。やはり一手間どこかでかかりますよね。。。

その他の回答 (2)

  • HohoPapa
  • ベストアンサー率65% (454/691)
回答No.2

シート1からシート5までを選択し、 印刷指示を行えば、 印刷ジョブが1つで、印刷ページが11ページになるわけですから、 印刷順番が期待と異なるものの、 作成されるPDFファイルが1つで そこに11ページが格納されますネ。 他方、 一般的な解とすれば、適当なシート上に、 印刷対象シート名、印刷範囲を一覧にし、 VBAで ・印刷範囲を設定して印刷する という命令を印刷ページ数(つまり11回) 繰り返すことになるものと思います。 しかし、一般的なPDF化ツールの場合、 印刷ジョブが11ジョブに分かれてしまいますから PDFファイルも11ファイルに分かれてしまい、 結局、1つのPDFファイルに編集する作業から逃れることができません。 PDF化するツール(ドライバー)は 世にたくさんあり、 中には、印刷ジョブが分かれても 1つのPDFファイルに順次追記する機能があります。 今、Kuronari12さんが使ってるPDF化するツールに この機能があれば、 VBAで比較的容易に実現できるだろうと思います。

Kuronari12
質問者

お礼

ありがとうございます。 PDF化ツールを探してみますね。

noname#232800
noname#232800
回答No.1

印刷の順序が「部単位」になってるときの動作っぽいですが_ すみません。手作業で、ここにチェックを入れて印刷。消して印刷で順番どうでしょう?

Kuronari12
質問者

お礼

ありがとうございます。 やはり、手作業になりますよね。。。

関連するQ&A

  • excel97で1ページだけ印刷したい。複数シートで・・

    こんにちは。 excel97で1シート辺り4ページの印刷数になってしまうファイルで、 1ページ目だけ印刷したいのですが、シート数がかなり多いため一括で行いたいと 思っております。 複数シート選択→メニュー→印刷→ページ指定→開始1→終了1 上記では出来ないようですが、何か方法は有りませんか? また、複数シートの印刷範囲設定を一括で変更出来ればそれでも良いのですが・・ 宜しくお願いいたします。 EXCEL97 SR-1

  • PDFファイルのページ指定印刷(複数ページ)

    1000ページほどのPDFファイルがあります。 そのうち、300ページほど印刷したいのですが、 印刷するページが1,7,10,21,35,50,83,105,178・・・と ランダムなのです。 このままでは印刷ボタンを押してページ指定して・・・ という作業を300回繰り返すことになるので、何かいい方法はありませんでしょうか? 印刷する指定ページはテキスト(1,7,10,21,35,50,83,105,178・・・)であります。当方で、PDFファイルを1ページずつ分割したり、TIFファイルに変換することも可能です。 宜しくお願いします。

  • エクセルで複数のシートの1枚目だけを印刷するには

    あるエクセルのファイルに50ほどのシートがあり、 各シートには2枚の印刷範囲があります。 複数のシートの1枚目だけを印刷したいのですが、 複数のシートを選択して、印刷メニューの印刷範囲のページ指定で 1枚目だけを指定すると、先頭のシートの1枚目しか印刷されません。 何か方法はありますでしょうか?? どなたかわかる方がおりましたら教えてください。 よろしくお願いします。

  • エクセルの複数シートpdf印刷が2分割される

    使用 EXCEL2007 ・ Adobe Acrobat 8 STANDARD エクセルで10シートを選択し、印刷プレビューを見ますとページ数は10ページとなっており、プリンタなどで印刷すると正常に10枚印刷されます。 問題はプリンタ選択でadobe PDFを指定し印刷をすると5ページでファイルの保存先を聞いてきます。それを終了させると残りの5ページ分も同じようになります。 結果5ページづつの2ファイルとなってしまします。どのようにすれば10ページ1ファイルでPDFが作成できるのでしょうか? よろしくお願いします。

  • Excelで複数のシートの印刷設定を変更

    Excelシートで、複数のシートの印刷設定を一度に変更するには、どうすればよいでしょうか? 1枚の紙に2ページ分を印さする設定をする際に、以下の方法でやりましたが、1枚目のシートしか設定されませんでした。 複数のシートを選択 ↓ 印刷プレビューから[印刷]選択 ↓ 印刷のオプションで2ページ分を印刷するように設定 ↓ 印刷したが、1シート目以外は通常どおりに印刷されてしまた。

  • Excel 複数印刷範囲設定と、印刷順序

    Excel2003です。印刷範囲について2つ質問があります。 1. 複数の範囲を指定し、[印刷範囲の設定]をしたとき、隣接した同じ行数,同じ列数の範囲を結合させない方法はないでしょうか? 2. 選択した順番にページ番号を設定するようなことはできないでしょうか? よろしくお願いします。

  • PDFとエクセルシートの連続印刷について

    PDFと、指定したエクセルシートの連続印刷について教えてください。 エクセルVBAを利用して、PDFとエクセルファイル(シート名指定あり)の混載するリストを参照し、 連続印刷する方法を教えてください。 添付した図のようなリストを作成し、 E:\test\111.pdf E:\test\222.pdf E:\test\222.pdf E:\test\Book1.xlsのSheet1 ・ ・ ・ と印刷させるには、どのように書けばよろしいでしょうか? A列に「判別」としたのは、PDFかエクセルかを見分けるのに必要かなと思って設けました。 リストはイメージなので、必要な情報などあれば作成しなおします。 あと、もし可能であれば、E列の印刷フラグが1であれば印刷、 0であれば印刷しないでスキップという機能が欲しいです。 ややこしくなるなら、この機能は我慢します。 全てのファイルをPDFにしてしまえば良いのですが、 それは理由があってできないのです。 VBA初心者で、エクセル2010を使用しています。 どなたかご存じでしたら、ぜひお教え下さい。 よろしくお願いします。

  • エクセルのシートの印刷範囲・ページ設定を他の全てのシートに適用したい場合

    本日2回目のエクセルについての質問です 誠に申し訳ありませんが タイトル通りエクセルのワークシートの印刷範囲・ページ設定を他の全てのシートに適用したい場合どのような作業をすればよいのでしょうか? 印刷範囲指定・ページ設定をしたワークシートをコピーして 他のシートに貼り付けても印刷プレビューでははみ出てまして1枚の用紙におさまるようになってはいません。 ワークシート一つ一つを手作業で設定しなければならないのでしょうか? また印刷する時選択したワークシートを全て一度で印刷するのは どのようにやればいいのでしょうか? 1ワークシートづつ一枚一枚印刷作業していてはかなりロスがでるので なにか簡単な方法があるのだとは思うのですが どなたかご教授いただけませんでしょうか?

  • 1つのExcelファイルに複数シートある場合、印刷のページ設定を一度に

    1つのExcelファイルに複数シートある場合、印刷のページ設定を一度に設定できる方法はありますか? 1つのExcelファイルに複数シートある場合、 1シートずつ、印刷のページ設定を同じ内容を設定しています。 複数シートあると時間が掛かってしまいます。 1シートごとに、印刷プレビュー後、ページ設定で 以下の設定をして、印刷をしています。 ・次ページ数にあわせて印刷 横1×縦1 (1ページに収まるように設定) ・ヘッダーにファイル名が表示されるように設定 印刷のページ設定を一度に設定できる方法を教えてください。

  • エクセルの複数シートをまとめてPDFへ変換したいです。

    エクセルの複数シートをまとめてPDFへ変換したいです。 Adobe Acrobatは4.0と5.0が入っています。 対象シートをすべて選択して[作業グループ]にしてから「Adobe PDFへの変換」をしても、 先頭ページしか変換されません。 『PrimoPDF』というのをダウンロードしてみたのですが、複数シートを選択して変換(印刷)しても、 1ページごとに保存場所を聞いてきて、つなげてくれません。 『Acrobat Distiller』で作業をしても同様です。 (たまに3ページ目と4ページ目だけつながっている、という場合があります) 設定が違うといっぺんに変換できないようだったので、 「ページ設定」はすべて一緒にしました。 (縮小%は違いますが、「拡大縮小印刷」で[横1×縦1ページに印刷]にしてあります) なにか設定ミスがあるのでしょうか。 無料でまとめて変換できる方法がありましたら教えて頂きたく、よろしくお願い致します。

専門家に質問してみよう