○シート1の印刷ボタンで印刷するとシート1及びシート2が印刷されます。
シート2だけを印刷するには、どうしたらよいのですか。
○現状
・シート2は非表示
・シート1に印刷ボタン(下記のVBAをマクロ登録済)
----------------------------------------------------------------------
Sub printappointedrange()
Dim ws As Worksheet 'ワークシート
Dim PrintFlg As Boolean '印刷するかの判定
On Error GoTo ErrorHandler 'エラー対応(非表示シート対応)
Application.Dialogs(xlDialogPrint).Show 'プリンタ設定
Application.ScreenUpdating = False '画面更新ストップ
For Each ws In Worksheets '全てのシートを調べる
With ws
Select Case .Name
Case "シート2"
.PageSetup.PrintArea = "A1:AB42" '印刷範囲の指定
.PrintOut '印刷
.PageSetup.PrintArea = "" '印刷範囲クリア
End Select
End With
Next
Exit Sub '終わり
ErrorHandler:
'シートが非表示の場合
If Err = 1004 Then
ws.Visible = True '表示する
ws.PrintOut
ws.Visible = False '非表示に戻す
End If
Resume Next '次の処理
End Sub
--------------------------------------------------------------------
お礼
・回答が帰って着ないので、新しく質問をさせてもらいましたが、覚えていてくれたので助かりました。 ・nishi6さんには、いろんな質問の回答を何回もいただきありがとうございました。 ・これからも、よろしくお願いします。