У меня есть запущенный макрос, который используется для вырезания и вставки содержимого строки на листе. Открытые действия, когда в столбце L содержится либо оператор Complete, либо оператор Held.
Оба эти двух утверждения определяют, на каком листе должна быть вырезана и вставлена строка.
- Если содержимое строки L заполнено, перейдите к Завершенным действиям
- Если содержимое строки L задержано, перейдите к «Проведенные действия»
Содержимое таблицы не начинается до строки 6, так как есть заголовки и заголовки выше, то же самое для таблиц назначения.
Кажется, я не могу указать конкретную строку, в которую должны быть вставлены вырезанные и вставленные ячейки.
Это копия кода, который у меня есть:
Я пробовал несколько методов VBA и не могу найти тот, который работает.
Sub completeaction()
Set wsOne = ActiveWorkbook.Sheets("Open Actions")
Set wsTwo = ActiveWorkbook.Sheets("Completed Actions")
Set ws.Three = ActiveWorkbook.Sheets("Held Actions")
lastRow = wsOne.Cells(wsOne.Rows.Count, 1).End(xlUp).Row
MsgBox lastRow
For i = 1 To lastRow
lastOutRow = wsTwo.Cells(wsTwo.Rows.Count, 1).End(xlUp).Row + 1
If wsOne.Range("L" & i).Value = "Complete" Or wsOne.Range("L" & i).Value = "Held" Then
wsTwo.Rows(lastOutRow).Value = wsOne.Rows(i).Value
wsOne.Rows(i).EntireRow.Delete
End If
Next
End Sub
Желаемым результатом для этого макроса является то, что строки будут перемещаться на соответствующие рабочие листы в зависимости от того, что было указано в строке L