Процедура создаёт книгу с заданным числом листов (по умолчанию — с одним)
Результатом работы макроса могут быть книги с выходными данными, содержащие не один лист. И при запуске на другом компьютере результаты могут колебаться от неверных до странных. По той простой причине, что число листов в новой книге может быть установлено (в настройках) совершенно любым. В результате — создаём макросом новую книгу, добавляем в неё ещё -надцать листов, перебираем их по индексам и... работаем совсем не с теми листами, про которые думалось при написании макроса. Данная подпрограмма позволяет создавать новые книги с конкретным числом листов, не зависящим от настроек Excel на том компьютере, где запущен макрос. По умолчанию — с одним. Единственный параметр процедуры — число листов.
Sub BookWithSheets(Optional ByVal Numb As Integer = 1)
Dim i As Integer
Application.DisplayAlerts = False Workbooks.Add Do On Error Resume Next Worksheets(1).Delete Loop While Err.Number = 0 For i = 1 To Numb - 1 Worksheets.Add after:=Worksheets(Sheets.Count) Next i Application.DisplayAlerts = True