Я пытаюсь создать код (цикл), чтобы при назначении задачи члену команды (в ячейке в столбце H) код осуществлял поиск значения ячейки с помощью существующего листаимен и, если есть совпадение, лист затем делает лист элемента задачи активным, находит последнюю доступную строку и добавляет выделенные задачи на лист. Код должен выполняться для всех заполненных ячеек в столбце.
Однако код, который я сейчас написал, выдает ошибки. Мне трудно определить имя листа (значение ячейки) и т. Д.
Sub TaskAllocation()
Dim cell As Range, Lastrow1 As Double, i As Integer
Dim SubTaskWs As Worksheet, Ws As Worksheet, Lastrow2 As Double
Set SubTaskWs = ActiveWorkbook.Worksheets("Sub tasks")
Set Ws = ActiveWorkbook.Sheets(WsName)
i = o
Lastrow1 = SubTaskWs.Range("H" & Rows.Count).End(xlUp).Row
Lastrow2 = Ws.Range("A" & Rows.Count).End(xlUp).Row
For Each cell In SubTaskWs.Range("H4:H" & Lastrow1)
For Each Ws In Sheets
If cell.value = Ws.Name Then
Ws.Range("A" + (Lastrow2 + (i))).EntireRow.Insert
Call copyFormattingAbove(Ws, "A" & Lastrow2)
Ws.Range(("A" & Lastrow2) + (i)).value = cell.Offset(, -6)
Ws.Range(("B" & Lastrow2) + (i)).value = cell.Offset(, -5)
i = i + 1
End If
Next Ws
Next cell
End Sub