Страницы: 1
RSS
Копировать лист в новую книгу несколько раз
 
Добрый вечер, уважаемые форумчане!

Возникла следующая загвоздка:
Есть рабочий файл с бланком наряд-заказа на скрытом листе.
С помощью макроса бланк заполняется, затем копируется в новую книгу, чтобы пользователь мог его при необходимости отредактировать и распечатать.
Вопрос в следующем: как скопировать бланк в новую книгу несколько раз, т.е. создать несколько листов?

Если запустить строку ThisWorkbook.Sheets("Бланк").Copy в цикле, то при каждом копировании создается новая книга. А это не удобно.
Буду благодарен за любую помощь.
 
Alexey0185,
Код
Sub Наряд_в_работу()
Dim i&
  i = Val(InputBox("Сколько листов?", , 2))
  If i <= 0 Then Exit Sub
  ThisWorkbook.Sheets("Бланк").Copy
  While i > 1
    ThisWorkbook.Sheets("Бланк").Copy before:=ActiveWorkbook.Sheets(1)
    i = i - 1
  Wend
End Sub
 
Код
Sub Наряд_в_работу()
    ThisWorkbook.Sheets("Бланк").Copy
    For i = 1 To 9
        ThisWorkbook.Sheets("Бланк").Copy Before:=ActiveWorkbook.Sheets(1)
    Next i
End Sub
Я сам - дурнее всякого примера! ...
 
Огромное спасибо!
Все работает. Последний вопрос: как размещать бланки в новой книге в порядке возрастания, а не убывания?
 
Alexey0185,
Код
Sub Наряд_в_работу()
Dim i&
  i = Val(InputBox("Сколько листов?", , 2))
  If i <= 0 Then Exit Sub
  ThisWorkbook.Sheets("Бланк").Copy
  While i > 1
    ThisWorkbook.Sheets("Бланк").Copy After:=Sheets(Sheets.Count)
    i = i - 1
  Wend
End Sub
Изменено: Казанский - 18.03.2016 11:10:44
 
Добрый день!

Казанский, огромное спасибо за помощь. Все работает.
Очень рад, что можно обойтись без сортировки листов.
Страницы: 1
Наверх