Я пытаюсь использовать приведенный ниже код, чтобы скопировать «главный» рабочий лист с переименованием в соответствии со значениями в рабочем листе «Список», который работает только один раз.
Если я попытаюсь запустить макрос снова, переименование не произойдет.
Ошибка выполнения '1004':
имя уже занято. попробуйте другой
Макрос должен работать один цикл и заканчиваться. При повторном запуске макрос должен перейти к следующему значению в «Списке».
Private Sub CommandButton1_Click()
Dim i As Integer
Dim ws As Worksheet
Dim sh As Worksheet
Set ws = Sheets("Master")
Set sh = Sheets("List")
Application.ScreenUpdating = 0
For i = 1 To Range("A" & Rows.Count).End(xlUp).Row
Application.CopyObjectsWithCells = False
Sheets("Master").Copy After:=sh
Application.CopyObjectsWithCells = True
ActiveSheet.Name = sh.Range("A" & i).Value
ActiveSheet.Range("F3").Value = sh.Range("A" & i).Value
Exit For
Next i
ws.Activate
End Sub