Я относительно новичок в VBA и медленно изучаю.Найдите строку, затем скопируйте и вставьте в другой рабочий лист для определенных столбцов
У меня есть очень простой макрос, который будет искать слово PASS
в колонке C
на моем первом листе, а затем скопировать всю строку на вторичный лист, который также называется PASS
.
Я пытаюсь копировать и вставлять данные в эту строку из столбцов A:E
. Ниже мой текущий код. Я попытался добавить .range("A:E")
, но потом ничего не делает.
Любая помощь в том, как получить это, только для копирования информации в столбцах A-E
для этой конкретной строки.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim C As Range
If Intersect(Target, Me.Range("C:C")) Is Nothing Then Exit Sub
For Each C In Intersect(Target, Me.Range("C:C")).Cells
If C.Text = "PASS" Then
C.EntireRow.Copy Worksheets("PASS").Cells(Rows.Count, "C").End(xlUp).Offset(1).EntireRow
End If
Next
End Sub
Вы должны указать номер строки, а также столбец при ссылках на диапазоны. 'range (" A: E ")' определяет только столбцы. Он должен быть чем-то вроде «range (« a54: e54 »). –
@Scott Marcus - вы можете ссылаться на целые столбцы, хотя это и не эффективно. – SJR