• ベストアンサー

複数のExcelファイルの印刷設定を一括に変えることはできますか?

1000ブック以上のExcelファイルが手元にありまして、これらの印刷設定をすべて変更しなければならなくなりました。 (実際に印刷はしません。設定をA3横1枚に合わせるだけです) 手作業で1ブックずつやっていくとかなりの手間なのですが、一括で設定を変更し保存する方法はないでしょうか? なお1ブックにつきSheet1・Sheet2・Sheet3がありますが、 2と3は空シートで、設定を変えたいのはSheet1だけです。 また、必要ならファイル名を連番にすることもできます。 ご教示のほど、よろしくお願いいたします。

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

  • ベストアンサー
  • mimeu
  • ベストアンサー率49% (39/79)
回答No.4

No1.です。 つい、つられて > (2) 1000ブック以上のExcelファイルは同じフォルダにおき、1からの連番にする。 >   例:12.XLS などと書きましたが、そんなことをする必要はありません。 少しわかりにくいですが、本文を以下のようにすれば元のファイル名のままで処理できます。 Sub 大量ブックの印刷書式を変更()   Const パス = "A:\Bcde\ナントカカントカ\" ' ★★★ 実際の名前に直して下さい ★★★   Dim ファイル名 As String   ファイル名 = Dir(パス & "*.xls")   Do While ファイル名 <> ""     ブック毎に印刷設定を変更 パス & ファイル名     ファイル名 = Dir()   Loop End Sub ※ なお、もしブックの中に Sheet1 を持たないものがあれば そこでエラーになります。その場合はエラー対応のロジックを追加する必要があります。

RICE_MEN
質問者

お礼

ご丁寧にありがとうございます! とても助かりました。

その他の回答 (3)

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.3

回答2は、ごめんなさい、ほかのご質問への回答を投稿してしまいました。 大変失礼しました。 ちなみにこちらのご質問では、 1.新しいマクロの記録で1つ、サンプルのブックのページ設定変更操作をマクロに記録する   記録先は「個人用マクロブック」に   ショートカットキーを登録しておくとよい   上書き保存してブックを閉じるところまでマクロにとる 2.対象ブックをどんどん開いて、1で記録したマクロをショートカットキーでばしばしと走らせる ぐらいの感じでも。 #ただし 実際には、ページ設定の操作を自動記録マクロに録ると、よけいなアクションまで記録されてしまって応答の遅いマクロになります。 マクロを編集し、必要な命令だけに抜き出して実行させるとベターです。

RICE_MEN
質問者

お礼

ありがとうございます! そうか、マクロ記録でもできるんですね・・・。

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

手順の組み立ては次のとおりになります。 1.マスタシートのA列の上から下までのセルをFor Next巡回する 2.各セルのC列が1でなかったらスルーする、1なら次の作業を行う 3.各列のADE列のセルの内容を、雛形シートの所定のセルに転記する 4.拾ったマクロでアドレス設定、メールの本文整形、Outlookで送出まで行う 5.1に戻って繰り返す。 サンプル: sub Macro1() dim h as range ’1 for each h in worksheets("宛先マスタ").range("A2:A" & worksheets("宛先マスタ").range("A65536").end(xlup).row) ’2 if h.offset(0, 2) = 1 then ’3 worksheets("送信文章").range("A17") = h worksheets("送信文章").range("A18") = h.offset(0, 3) worksheets("送信文章").range("A19") = h.offset(0, 4) ’4  メール本文の生成と送出 ’5 End If Next End Sub

  • mimeu
  • ベストアンサー率49% (39/79)
回答No.1

もしVBAを使ってよければ、これでいいと思います。 前提条件は以下の4点です。 (1) 任意のブックに下記プログラムをコピーする。   もしその方法をご存じなければ、また質問して下さい。 (2) 1000ブック以上のExcelファイルは同じフォルダにおき、1からの連番にする。    例:12.XLS (3) 通常使うプリンターはA3サイズが使えるものに指定しておく。 (4) 試す前に、かならずバックアップを取る。 Sub 大量ブックの印刷書式を変更()   Const パス = "A:\Bcde\ナントカカントカ\" ' ★★★ 実際の名前に直して下さい ★★★   Dim 繰返し As Integer   For 繰返し = 1 To 1000 ' ★★★ 実際の数に直して下さい ★★★   ブック毎に印刷設定を変更 パス & 繰返し & ".xls"   Next 繰返し End Sub Sub ブック毎に印刷設定を変更(ブック名 As String)   Dim ブック As Workbook   Set ブック = Application.Workbooks.Open(ブック名)   With ブック.Worksheets("Sheet1").PageSetup     .Orientation = xlLandscape     .PaperSize = xlPaperA3   End With   ブック.Save   ブック.Close End Sub

関連するQ&A

  • エクセルの複数ブックをまとめて印刷したい

    お世話になります。 早速ですが、フォルダ内に複数のエクセルブックがあります。それらのブックには複数のシートがあります。 フォルダー内の複数のブックの複数のシートも含むものを一括印刷したいのですが可能でしょうか? フォルダー内を一括選択し、ファイルの印刷をした場合、 複数のブックを印刷することは可能なのですが、それらにあるはずの複数のシートが印刷されません。 「複数のブックの全てのシートも含むものを一括印刷」したいのですができるでしょうか? よろしくおねがいします。

  • 複数のエクセルブックの中のシート指定して一括印刷

    複数のエクセルブックの中のシート指定して一括印刷 複数のエクセルブック(400枚)がある中で、シートが1~4あります。 そのエクセルブックの中のシート1とシート3だけを印刷していきたいのですが、 400回エクセルを開いてシート指定しないと印刷できないでしょうか? できれば、全ブックのシート指定をして、一括での印刷は可能でしょうか? 良きアドバイス等がありましたら教えて頂けたらと思います。 宜しくお願い致します。

  • エクセルファイルの一括印刷について

    別々のエクセルファイルにそれぞれシートが3シート以上ある場合で、別々のエクセルファイル全てのシートを一括印刷することは出来ないでしょうか?1つ1つのファイルを開き全てのシートを指定し、1ファイル内で全てのシートを印刷しています。現状のやり方ですと400個のファイルを1ファイルごとに全シート指定し印刷、また違うファイルを開き全シートを指定し印刷という時間のかかるやり方しか分かりません。1ファイルごとに行っていくと間違う危険性もあり、時間もかかるため困っています。全ファイルを指定し、尚且つそのファイル内シートを全て指定し一括で印刷する方法を教えてください。

  • excelの複数シートを一括で両面印刷設定の方法

    excelファイルで1つのファイルの中で複数のシートがあり そのシートを両面印刷する時、シートごとに両面印刷の設定を1枚1枚 しなかればならないが、これを千シート一括して両面印刷の設定する方法が知りたいのですが・・・ よろしくお願いします。(__)

  • エクセルで複数のシートを同じ印刷設定で印刷する方法 パート2

    先日 「 エクセルで10個のシートがあり、そのシートをすべて同じ印刷設定で印刷する方法ってないでしょうかね?? 今現在だと、シートごとに設定した印刷設定になっているのですが、一括で設定する方法はないでしょうか?? 教えてください 」 と質問をして 選択して、ファイル→ページ設定で→オプションで 印刷の設定が一括変更できることをアドバイスいただいたのですが、これだと、一つ一つ違う余白等のデータもすべて変更されてしまうので、使えないことがわかりました。。。。 印刷のやり方だけを一斉に替える何かいい方法はないでしょうかね。。。。???

  • エクセルのプリンター一括出力で

    お世話になります。 エクセルでブック内に複数のシートがあるのですが、複数のシートまたはブック全体を一括して出力する際、プリンターのプロパティを変更して出力しても、その変更したときに表示されていたシートのみが反映されて、複数のシートに反映されません。 (たとえば、ブック全体を両面印刷したい場合など。) 一括して、プリンターのプロパティーを変更するにはどのようにしたらいいのでしょうか。 どなたかご教示ください。

  • エクセルで複数のシートを同じ印刷設定(印刷品質 きれい)で印刷する方法

    「 エクセルで10個のシートがあり、そのシートをすべて同じ印刷設定(印刷品質 きれい)で印刷する方法ってないでしょうかね?? 今現在だと、シートごとに設定した印刷設定になっているのですが、一括で設定する方法はないでしょうか?? 教えてください 」 と質問をして 選択して、ファイル→ページ設定で→オプションで 印刷の設定が一括変更できることをアドバイスいただいたのですが、これだと、一つ一つ違う余白等のデータもすべて変更されてしまうので、使えないことがわかりました。。。。 印刷の品質 だけを一斉に替える何かいい方法はないでしょうかね。。。。??? 使い方としてテスト印刷のときは 早いで印刷して、清書はきれいで印刷をしたいのです。 お願いします。

  • エクセルファイルの印刷について教えてください

    30シート以上あるBOOKファイルを下記の条件で一括印刷するにはどうしたらいいか教えて下さい。もし、マクロを作成しないとできないのであれば、解説付で教えて頂けると助かります。 <印刷条件> 用紙サイズ:A4    向き:横 その他  :2(シート)→1(頁に収める)      :両面印刷  

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

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

  • Excel印刷の一括変更方法

    Excelを印刷したいのですが、印刷するシートが30ぐらいと多数あり、 また印刷はA3・両面印刷に変更したい。(印刷のプロパティのページ設定で (1)A3→A4、仕上げの印刷方法で(2)片面→両面印刷。) 多数のシートを、そのシート毎に、印刷を変更しなければいけませんか? (なお、すべてのシートを選択した状態では、いっきに変更かと思っても、印刷すると、 選択シートは印刷されるが、A3・片面のままでした・・・) すべてのシートを選択とかで、一括して変更する方法はないでしょうか?  多数シート毎の変更は、時間と手間が掛るので、ぜひ知ってる方、教えてください。

専門家に質問してみよう