Я пытаюсь создать код, который просматривает диапазон ячеек, и скопирует и вставляет ячейки, которые соответствуют определенному параметру, в другое место в книге.Копирование и вставка Loop в VBA на основе значений ячеек
Я хотел бы, чтобы скопировать что-нибудь с буквой L от «Sheet5» и скопировать определенный диапазон для «sheet1»
я должен иметь что-то неправильно с частью петли кода, потому что только в верхней части ячейки диапазон копируется. Я хотел бы, чтобы вставка начала в строке 5 и продолжала двигаться вниз. Означает ли это, что я правильно поставил IRow = IRow + 1 ниже функции вставки?
Sub Paste_Value_Test()
Dim c As Range
Dim IRow As Long
Dim rDestination As Excel.Range
Application.ScreenUpdating = False
Sheets("sheet5").Activate
For Each c In Sheets("sheet5").Range("b2", Range("N65536").End(xlUp))
If c.Value = "L" Then
Sheets("sheet5").Cells(c.Row, 2).Copy
Set rDestination = Worksheets("sheet5").Cells(5 + IRow, 12)
rDestination.Select
Selection.PasteSpecial Paste:=xlPasteValues, _
Operation:=xlNone, _
SkipBlanks:=False, _
Transpose:=False
IRow = IRow + 1
End If
Next c
End Sub
Я очень ценю любую помощь по этому вопросу. Я относительно новичок в VBA и собираюсь начать серьезно копаться.
Таким образом, «L» может быть где угодно в столбцах «B: N'? И когда вы нашли, вы хотите скопировать значение из Col 2 этой строки? –
Вы копируете файл Sheet5 в Sheet5 в свой код? –