| 
    
     |  | ▼初めまして さん: 
 >ThisWorkbook.Worksheets(2).Range(Cells(6, 7), Cells(6, 34)).Clear
 >
 >というコードを書いたのですが、エラーで落ちてしまいます。。。
 
 このコードはどこに書いていますか?
 
 ThisWorkbook.Worksheets(2).Range(Cells(6, 7), Cells(6, 34))
 というのは、標準モジュールに書いてあると
 
 ThisWorkbook.Worksheets(2).Range( _
 ActiveSheet.Cells(6, 7), ActiveSheet.Cells(6, 34))
 の意味に解釈されます。
 
 シートモジュールに書いているとすると
 ThisWorkbook.Worksheets(2).Range(Me.Cells(6, 7), Me.Cells(6, 34))
 の意味に解釈されます。
 
 よって、ThisWorkbook.Worksheets(2) がアクティブになっていないと、
 ThisWorkbook.Worksheets(2).Rangeの中で 別シートのCells を参照する
 という不合理な処理をしようとして、Application定義のエラーになります。
 
 
 Cellsのまえにもシートを明示して
 With ThisWorkbook.Worksheets(2)
 .Range(.Cells(6, 7), .Cells(6, 34)).Clear
 End With
 とすれば、通ると思います。
 
 |  |