|    | 
     いつも参考にさせていただいてます。 
 
sheet1〜4以外の全てのsheetの印刷プレビューを表示するマクロです。 
 
下記のマクロで、"インデックスが有効範囲にありません"とのエラーが出ます。 
エラーは"Worksheets(ar()).Select"の部分です。 
 
sheet1〜3だったときは問題なく動いてくれていたのですが、 
一つ増やしたらエラーが出るようになりました。 
 
問題はar()の変数がEmpty値になっていることだと思うのですが、 
どう訂正すればいいのか、わからなくて困っています。 
 
何卒、お力をお貸しください。 
よろしくお願い致します。 
 
使用しているのはExcel2007です。 
  
Sub test 
 
Dim i As Integer 
  Dim j As Integer 
  Dim n As Integer 
  Dim ar() As Variant 
    n = Worksheets.Count 
    If n = 4 Then 
    MsgBox "印刷できるシートがありません" 
    GoTo Wayout 
    End If 'シートひとつしかない場合 
  ReDim ar(n - 4) 
    For i = 5 To n 
    ar(j) = i 
     j = j + 1 
  Next i 
  
 Worksheets(ar()).Select 
 
ActiveWindow.SelectedSheets.PrintPreview 
 
Wayout: 
End Sub 
 | 
     
    
   |