私はワークシートをループするコードを持っていますが、自分の条件に基づいた行だけでなくすべての行をコピーします。私が望む行だけをコピーするにはどうしたらいいですか?条件を基にコピーするために行をループする
Sub Major2_Paster()
Dim LastRow As Integer
Dim i As Integer
Dim erow As Integer
LastRow = Cells(Rows.count, 1).End(xlUp).Row
For i = 2 To LastRow
If Cells(i, 12) = “MLA” Then
range(Cells(i, 1), Cells(i, 21)).Select
Selection.Copy
Workbooks.Open Filename:="H:\Degrees List\Sorted_Workbooks\MLA Mar-17.xlsx"
erow = ActiveSheet.Cells(Rows.count, 1).End(xlUp).Offset(1, 0).Row
ActiveSheet.Cells(erow, 1).Select
ActiveSheet.Paste
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.CutCopyMode = False
End If
Next i
End Sub
を見つけるの最初のステップは、コードの作業を行うのですか?はいの場合、この質問はhttp://codereview.stackexchange.com/に属しています。 –
@ScottCraner私は完全にはわかりませんが、私はそれを実行したときに非常にゆっくりループしていたので、プログラムを停止しなければならなかったほどのコード行があります。小さいサイズで試してみましょう。 – Cocoberry2526
@ScottCraner私はそれが実際に動作しないコードをテストしました。条件に基づいて行を検索するのではなく、私が探しているブックの行だけを検索して貼り付けます。 – Cocoberry2526