Этот код должен вам помочь:
Sub Sample()
Dim wsToCopy As Worksheet, wsNew As Worksheet
With Sheets("Sheet1")
LastRow = Sheets("Sheet1").Cells(.Rows.Count, 1).End(xlUp).Row
For a = 1 To LastRow
Set wsToCopy = ThisWorkbook.Sheets("TemplateSheet")
Set wsNew = ThisWorkbook.Sheets.Add
wsNew.Name = Sheets("Sheet1").Cells(a, 1).Value
wsToCopy.Cells.Copy wsNew.Cells
Next
End With
End Sub
Разъяснение:
На листе с именем «Лист1» необходим список имен создаваемых листов, начиная с первого ряда, всегда в первом столбце.
Макрос создаст новый лист, переименует его и скопирует все с листа "TemplateSheet" . А затем перейдет к следующему ряду Лист1.
Итак, просто назовите свой шаблонный лист как «TemplateSheet» и добавьте 150 имен в первый ряд «Sheet1».
Вы можете удалить шаблон и Лист1 позже.