| 
    
     |  | ▼うろ さん: >下記のマクロで、"インデックスが有効範囲にありません"とのエラーが出ます。
 >エラーは"Worksheets(ar()).Select"の部分です。
 >問題はar()の変数がEmpty値になっていることだと思うのですが、
 
 以下のようにしてもいいと思いますよ
 ポイントは n がシート総数 のとき、5,6,7...n を配列 ar() に入れる
 訳ですが、インデックス番号を Redim ar(5 to n) と
 5から n までというインデックスにしていることです。
 
 Sub test3()
 Dim i As Integer
 Dim n As Integer
 Dim ar() As Variant
 n = Worksheets.Count
 If n > 4 Then
 ReDim ar(5 To n)
 For i = 5 To n
 ar(i) = i
 Next
 
 Worksheets(ar).Select
 ActiveWindow.SelectedSheets.PrintPreview
 Else
 MsgBox "印刷できるシートがありません", vbCritical
 End If
 End Sub
 
 
 |  |