Так что я хотел бы создать функцию зацикливания - где
Если ответ в столбце O - «Да», введите значение в столбце C в качестве «нового имени» скопированного листа Loop, пока столбец O не будет пустым
Я знаю, что должен удалить поле ввода («Введите имя для скопированного листа»)
Однако я не уверен, что ставить после newname в качестве функции циклического воспроизведения
Sub Button112_Click()
Dim newName As String
On Error Resume Next
newName = InputBox("Enter the name for the copied worksheet")
If newName <> "" Then
ThisWorkbook.Sheets("Template").Copy After:=Worksheets(Sheets.Count)
On Error Resume Next
ActiveSheet.Name = newName
Range("$D$3").Value = newName
End If
Dim n As Name
For Each n In ActiveWorkbook.Names
n.Visible = True
Next n
Dim numrow
numrow = Range("F16").Value
If IsNumeric(numrow) Then
For i = 1 To numrow
Call INRW
Next i
End If
End Sub
Я пробовал что-то похожее на это, но безуспешно
lastRow = .Cells(Rows.Count, 15).End(xlUp).Row
For i = 1 To lastRow
If .Cells(i, 15).Value2 = "Yes" Then CopySheetAndRename (.Cells(i, 3).Value2)
Next i
End With
End Sub