|
▼かみちゃん さん、はじめまして
>>どの行で、どのようなエラーになるのでしょうか?
Range("E3,I3,M3(省略)・・・・・,BW3").Select
↑この行で「実行時エラー1004 Rangeクラスのselectメソッドが失敗しました」
とでます。
>>あと、直接は関係ありませんが、
>>・変数の宣言
>>・インデントの整理
>>は、きちんとされたほうがいいと思います。
アドバイスありがとうございます。今後、気をつけます。
>>なお、
>> If Cells(i, 1) <> "" Then '◆
>>の行は、変数i が 1 のときは、マクロ開始時のアクティブシートですが、
>>変数i が 2以上のときは、Sheet3 のセルがアクティブになっていますが大丈夫
>>でしょうか?
ご指摘のとおり、E3,I3をsheet3に貼り付けたあとにsheet3がアクティブになり、処理が進みません。
どのように修正すれば、またaheet1のデータを取得し、sheet3に貼り付けるという処理を繰り返してくれるのでうしょうか?お教えください。
>Sub データ取得貼付2()
> Dim i As Integer '★
>
> For i = 3 To 100
> MsgBox Cells(1, 1).Address(, , , True) '☆
> Cells(1, 1) = i
> If Cells(i, 1) <> "" Then '◆
> Worksheets("Sheet1").Activate
> Range("E3,I3").Select '☆
>' Range("E3,I3,M3(省略)・・・・・,BW3").Select
> ' Range("Ei,Ii,Mi(省略)・・・・・,BWi").Select
> Selection.Copy
> Sheets("Sheet3").Select
> Range("G3").Select
>' ↓xlPasteAll, の後に △_ が 抜けている?(△は半角スペース)
抜けておりました。
> Selection.PasteSpecial Paste:=xlPasteAll, _
> Operation:=xlNone, SkipBlanks:= _
> False, Transpose:=True
> End If
> Next
>End Sub
よろしくお願いします。
|
|