Создать новый лист с именем из значения ячейки другого листа - PullRequest
0 голосов
/ 14 января 2020

У меня есть 02 листа следующим образом. Я хочу добавить новые листы с именем, определенным в столбце «Sheet_Name» листа «Summarize».

Например: я ввел имя 03 листа «AB C», «B CC», « XYZ ", тогда будет создано 03 листа с соответствующим названием. Затем я скопирую содержимое листа «Шаблон» в «AB C», «B CC», «XYZ» и изменю значение B1 новых листов с его именем.

Как можно Я делаю это с VBA? Я написал фрагмент для создания, но он не может работать. Спасибо.

Sub Macro2()

    Dim i As Integer
    Dim n As Integer
    n = ThisWorkbook.Sheets(Summary).Range("B2", ActiveCell.End(xlDown)).Count

    For i = 1 To n
        Sheets.Add
        Sheets.Add.Name = ThisWorkbook.Sheets(Summary).Cells(i + 1, B).Value      
    Next i

End Sub

Лист "Summarize"

enter image description here

Лист "Template" enter image description here


Согласно руководству Бигбен, я пишу эти коды для создания новых листов, но кроме "AB C", "B CC", "XYZ", он создал 03 других листа.

enter image description here

Sub Macro2()

    Dim i As Integer
    Dim n As Integer

    With Sheets("Summary")
        n = .Range("B" & .Rows.Count).End(xlUp).Row - 1
        For i = 1 To n
            Sheets.Add
            Sheets.Add.Name = ThisWorkbook.Sheets("Summary").Cells(i + 1, 2).Value
        Next i
    End With

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...