| 
    
     |  | こんにちは 
 ▼skuroyan さん:
 >この方法(UsedRange.Copy)ですと、読込元データが前回読込より減った場合、前のデータが残ってしまいます。これへの対処として、読み込んだデータを格納するシートを事前にクリヤ(Range("A2:C1000").Select Selection.ClearContents)する方法を考えましたが、これ以外に良い方法・効率的な方法はありますでしょうか?
 
 クリアする事は別に非効率的ではないですけど、コードは
 ThisWorkbook.Worksheets(1).UsedRange.ClearContents
 tBK.Worksheets(1).UsedRange.Copy ThisWorkbook.Worksheets(1).Range("A1")
 として下さい。
 
 Selectは殆どの場合は不要です。
 但しどのブックのどのシートのセルか明示する(特に複数のブック、複数のシートを扱う
 場合)クセを付けて下さい。
 
 今回のケースで別のブック.xlsを開いた後に
 >Range("A2:C1000").Select Selection.ClearContents
 としたら、別のブック.xlsのデータがクリアされてしまいます。
 
 |  |