Хотите создавать новые листы, которые копируют шаблон в определенном порядке на основе списка имен на листе - PullRequest
0 голосов
/ 28 августа 2018

Я хотел создать новые листы на основе списка, и все эти новые листы скопировали шаблон на уже существующий лист. Я пробовал искать примеры, но все, которые я нахожу, только создают список листов или просто копируют шаблон. Я знаю, что я близко, но не могу заставить это работать.

Это то, что у меня есть, и это работает, но когда листы создаются, они отображаются как client3, client2, client1. Я хочу, чтобы это появилось в обратном порядке. Я знаю, что мне нужно изменить копию после заявления, но каждый раз, когда я пытаюсь, я получаю сообщение об ошибке. Любая помощь будет оценена Названия листов, которые у меня есть, - Клиенты и Сканирование

Option Explicit
Sub NewSheets()
Dim i As Integer
Dim ws As Worksheet
Dim sh As Worksheet
Dim sh2 As Worksheet
Set ws = Sheets("Scan")
Set sh = Sheets("Clients")
Set sh2 = Sheets("Scan")
Application.ScreenUpdating = 0

For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
        Sheets("Scan").Copy After:=sh2
        ActiveSheet.Name = sh.Range("A" & i).Value
Next i
End Sub

1 Ответ

0 голосов
/ 29 августа 2018

Как насчет чего-то подобного ниже:

Option Explicit
Sub NewSheets()
Dim ws As Worksheet: Set ws = Sheets("Scan")
Dim sh As Worksheet: Set sh = Sheets("Clients")
Dim i As Long

Application.ScreenUpdating = False

For i = 2 To sh.Range("A" & sh.Rows.Count).End(xlUp).Row
    Sheets("Scan").Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
    ActiveSheet.Name = sh.Range("A" & i).Value
Next i

Application.ScreenUpdating = True
End Sub
...