VBA初心者なのですが、VBAで条件分けをして条件を満たした時に、特定の範囲をコピーし、別シート("R1R2Flag")のA3から貼り付けをしたいです。
以下の様に試しましたが、★の部分で “Rangeメソッドは失敗しました:Worksheet'オブジェクト” というエラーメッセージが出ます。同じシート内ではコピペができるのですが、別シートに張り付けようとするとエラーがでるので、正しくシートが選択されるようにコピー元と貼り付け先のシート名を明記したのですが上手くいきません。
初歩的な質問で申し訳ありませんが、ご回答よろしくお願いします。
Sub フラグ立ってる部分を別シートにコピペ()
Application.ScreenUpdating = False
Dim i, k, j As Long Dim ws(1) As Worksheet Dim Flag As Integer Dim wb1 As Workbook Set wb1 = ThisWorkbook Set ws(0) = wb1.Worksheets("R1R2") Worksheets.Add(After:=ws(0)).Name = "R1R2Flag" Set ws(1) = wb1.Worksheets("R1R2Flag") i = 3 j = 3 Do Until ws(0).Cells(i, 1) = "" Flag = ws(0).Cells(i, 20) If Flag = 1 Then
★ ws(0).Range(Cells(i, 2), Cells(i, 21)).copy
ws(1).Cells(j, 1).PasteSpecial Paste:=xlPasteAll
j = j + 1 End If i = i + 1 Loop
Application.ScreenUpdating = True
End Sub
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/13 06:49