H o l a:
¿La lista de nombres de hojas está en la misma hoja2 que se va a copiar?
Si es así, te anexo la macro:
Sub copiarHoja()
'Por.Dante Amor
Set h = Sheets("Hoja2")
For i = 2 To h.Range("A" & Rows.Count).End(xlUp).Row
existe = False
If h.Cells(i, "A") <> "" Then
nombre = Left(h.Cells(i, "A"), 30)
For Each hoja In Sheets
If UCase(hoja.Name) = UCase(nombre) Then
existe = True
Exit For
End If
Next
If existe = False Then
h.Copy after:=Sheets(Sheets.Count)
ActiveSheet.Name = nombre
End If
End If
Next
MsgBox "hojas copiadas"
End Sub
' : )
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
' : )