Копирование и вставка всей строки на основе двух условий
В школьном проекте я пытаюсь найти все строки, которые удовлетворяют обоим (из двух) условиям, а затем вставить всю строку в конец моего набора данных. Я пытаюсь сделать это с переменными, поскольку таблица может измениться в тестах, которые будет выполнять мой профессор. Я продолжаю получать ошибку «Нижний индекс вне диапазона». Мои чтения и назначения P и T, для цикла, если операторы и функции count все работают.
numrow = Rows(Rows.Count).End(xlUp).row
numcolumn = Columns(Columns.Count).End(xlUp).Column
P = Range(Cells(3, 1), Cells(numrow, 1)).Value
T = Range(Cells(3, 2), Cells(numrow, 2)).Value
For i = LBound(P, 1) To UBound(P, 1)
If P(i, 1) = 5 And T(i, 1) = 100 Then
countrow = countrow + 1 'check: return is 25
'Range(i, numcolumn).copy Sheets("Sheet1").End(xlUp).Offset(1, 0)
Worksheets("Sheet1").Range(Cells(i, numcolumn)).Value.copy
lastrow = ActiveSheet.Cells(1, 1).CurrentRegion.Rows.Count + 1
Range(Cells(lastrow, 1)).PasteSpecial xlPasteFormulasAndNumberFormats
Application.CutCopyMode = False
'I would also like to change all the cells that were just pasted in the first column to the value of 2.5 here, but I have no idea where to start with that
End If
Next i
Как видите, я пробовал это двумя способами
1.)
Range (i, numcolumn) .copy Sheets ("Sheet1"). Конец (xlUp) .Offset (1, 0)
(который пока комментируется)
2.)
Рабочие листы («Лист1»). Диапазон (Ячейки (i, numcolumn)). Значение. Копия
оба подсвечиваются, когда я пытаюсь отладить, и у них появляется ошибка "индекс вне диапазона"