1
私は以下のコードを少し持っています。これは、 "実行時エラー '1004'オブジェクト '_Worksheet'のメソッド '範囲'を取得できませんでした。私はws.Activateメソッド(2番目のブロックを参照)を使用してこれを動作させることができますが、なぜこれが機能しないのか理解したいと思います。OffestとFillDown:実行時エラー '1004'メソッド '_Worksheet'オブジェクトの 'Range'が失敗しました
障害が発生するのは、 1).FillDownが の行の場合2)コードが非アクティブなワークシートで実行されている場合。
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Set ws1 = Worksheets(1)
Set ws2 = Worksheets(2)
ws1.Range("D2").Formula = "=CONCATENATE(B2,"" "", C2)"
ws1.Range("D2", Range("C2").End(xlDown).Offset(0, 1)).FillDown
ws2.Range("D2").Formula = "=MID(C2, 3, 6)"
ws2.Range("D2", Range("C2").End(xlDown).Offset(0, 1)).FillDown
'''This code works.
Worksheets(1).Activate
Range("D2").Formula = "=CONCATENATE(B2,"" "", C2)"
Range("D2", Range("C2").End(xlDown).Offset(0, 1)).FillDown
Worksheets(2).Activate
Range("D2").Formula = "=MID(C2, 3, 6)"
Range("D2", Range("C2").End(xlDown).Offset(0, 1)).FillDown
魅力的な作品です!私に何か新しいことを教えてくれてありがとう:-) – SiriDeva