プロが教える店舗&オフィスのセキュリティ対策術

大量のExcelブック内の決まったシートのみをいっきに印刷する方法

300以上のExcelブックがあります。
ひとつのブック内にExcelシートが20シート作成されており、300ブック内のシート名すべて統一されています。
毎月300ブックをひとつひとつ開き、④という名前のシートを印刷をしては閉じるを300回以上、地道に行っています。
時間がかかり大変です。300ブックの④を、いっきにまとめて印刷する方法がありましたら教えてください。

質問者からの補足コメント

  • tom04様、マクロの設定は上手くいきました!一枚印刷ごとに印刷プレビューが出てきますが、その度に印刷ボタンを押さないと印刷出来ないということですか。
    一枚毎プレビューで確認せず一回印刷ボタンを押せば纏めて300枚印刷というのは出来ないでしょうか。

      補足日時:2018/04/14 21:49
  • 変更しましたら、実行エラー52ファイル名または番号が不正ですと出て、先ほどできた印刷も出来なくなってしまいました。

      補足日時:2018/04/14 23:11

A 回答 (4件)

>実行エラー52ファイル名または番号が不正ですと出て・・・



ファイルが開いていない場合にそのようなエラーになると思います。
おそらく、印刷が追い付いていないのだと思います。
印刷準備ができる前にファイルを閉じているような気がします。

そのような不具合が出るかもしれないと思って、「印刷プレビュー」でやめるようにしていました。

苦肉の策ですが
>wS.PrintOut
の次に
>Application.Wait Now() + TimeValue("0:00:05")
を追加してみてください。

とりあえず印刷の指示をだしたあと、5秒だけ待つようにします。

※ これでも同じようなエラーが表示される場合はもう少し待ち時間を長くしてみてください。
たとえば、10秒とか・・・

これでもダメならごめんなさい。m(_ _)m
    • good
    • 0

No.2です。



>一回印刷ボタンを押せば纏めて300枚印刷・・・

前回のコードの
>wS.PrintPreview

>wS.PrintOut
に変更してみてください。

※ 不具合が起きた場合等は考慮していません。m(_ _)m
    • good
    • 0
この回答へのお礼

いつもありがとうございます。大変助かりました。最終的に一番初めに教わった方法、プレビューを開いてからの印刷で作業していきます。

お礼日時:2018/04/16 20:31

こんにちは!



VBAになりますが一例です。
No.1さんがおっしゃっているように一気に印刷!となると不具合が起こった場合に厄介なので、
「印刷プレビュー」で止めるようにしています。

新規ブックの標準モジュールに↓のコードを記載し、マクロを実行してみてください。
尚、印刷したいファイルは同じフォルダに入っているという前提です。

Sub 印刷()
Dim myPath As String, fN As String
Dim wB As Workbook, wS As Worksheet
Dim k As Long, cnt As Long, myFlg As Boolean

myPath = "保存場所のパス" & "\"
fN = Dir(myPath & "*.xls*")
Do While fN <> ""
Workbooks.Open (myPath & fN)
Set wB = ActiveWorkbook
For k = 1 To wB.Worksheets.Count
Set wS = wB.Worksheets(k)
If wS.Name = "④" Then
myFlg = True
Exit For
End If
Next k
If myFlg = True Then
wS.PrintPreview
cnt = cnt + 1
Else
MsgBox fN & "に「④」というシートがありません。"
End If
Application.DisplayAlerts = False
wB.Close
Application.DisplayAlerts = True
fN = Dir()
myFlg = False
Loop
MsgBox cnt & "シート印刷しました。"
End Sub

※ コード内の「保存場所のパス」は実情に合わせてください。m(_ _)m
    • good
    • 0

マクロ(VBA)を使えば比較的に簡単に出来ると思うのですが、プリンターなどのトラブルが有った時に、PCやプリンターにバッファーがあるのでどこまで正常に印刷されたかが自動では把握できないので、再印刷を途中から出来るような仕組みと、バッファーなどのクリアの方法を把握出来てないと大変なことになるかもしれません。


ところで300のブックは1つのフォルダーに総て有って、他のエクセルファイルは同じフォルダーには無いと思って良いのでしょうか?
    • good
    • 0
この回答へのお礼

アドバイスありがとうございました。参考にさせて頂きました。

お礼日時:2018/04/16 20:30

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!