【VBA】印刷のループを途中で強制的に抜ける方法
Excel2007を使用しています。
「オートフィルター⇒印刷」を繰り返す自動処理のマクロを作成しました。
処理結果自体にはとくに問題はないのですが、印刷量が多いので、何らかの事情がおきた場合ループの途中で強制終了させたいのですが、どうすればいいのでしょうか。
※繰り返し処理は、こちらの仕様をお借りしています。
http://ameblo.jp/raikayooo/entry-11219911386.html
※印刷したいシートとは別のシートにオートフィルターの条件をA列に入力し、それを上から順番にフィルターをかけて印刷していくものです。
Sub 明細連続印刷()
Dim i As Long
Dim x
Dim MaxRow As Long
'「明細」シートをアクティブにする
ActiveWorkbook.Worksheets("明細").Activate
'オートフィルターが設定されている場合、解除
If ActiveSheet.FilterMode = True Then
ActiveSheet.ShowAllData
End If
'「印刷リスト」の記載に従ってオートフィルターを設定
MaxRow = Sheets("印刷リスト").Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To MaxRow
x = Sheets("印刷リスト").Cells(i, 1).Value
ActiveSheet.Range("$B$8:$M$20422").AutoFilter Field:=3, Criteria1:=x
'フィルター済みの「明細」シートを印刷
Worksheets("明細").PrintOut
Next i
'オートフィルターが設定されている場合、解除
If ActiveSheet.FilterMode = True Then
ActiveSheet.ShowAllData
End If
End Sub