Try this
Option Explicit
Sub Add_NameWS2()
Dim myCell As Range
Dim ValidName As Boolean
With Worksheets("List")
For Each myCell In .Range(("A1"), .Cells(.Rows.Count, 1).End(xlUp)).Cells
ValidName = True
Worksheets("template").Copy after:=Worksheets(Worksheets.Count)
On Error GoTo NameAlreadyUsed
ActiveSheet.Name = myCell.Value
If ValidName = False Then
Application.DisplayAlerts = False
Worksheets(Worksheets.Count).Delete
Application.DisplayAlerts = True
End If
Next myCell
End With
Exit Sub
NameAlreadyUsed:
ValidName = False
Resume Next
End Sub
Bookmarks