Код VBA не копирует лист во второй раз, если я добавляю кнопку на скопированный лист - PullRequest
0 голосов
/ 07 февраля 2020

У меня есть код VBA, который копирует выбранную страницу в рабочую книгу, манипулирует ею нужным образом и создает отчет на новом рабочем листе. Следующее, что я хочу сделать, это добавить кнопку закрытия во вновь созданный отчетный лист. Однако, когда я делаю это и закрываю лист отчета с помощью кнопки, в следующий раз, когда я пытаюсь получить тот же отчет, он выдает ошибку индекса вне диапазона. Вот код для копирования рабочего листа:

Sheets(UserForm1.ComboBox3.Value).Copy After:=Sheets("Sheet1")
Sheets(Sheets.Count).Name = UserForm1.ComboBox3.Value & UserForm1.ComboBox1.Value

А вот код, который добавляет кнопку:

    Set btn = Sheets(Sheets.Count).Buttons.Add(3, 3.75, 93, 16.5)
    btn.OnAction = "raporKapat"
    btn.Characters.Text = "Kapat"

А вот макрос «raporKapat», на который он ссылается:

Private Sub raporKapat()
Application.DisplayAlerts = False

ActiveSheet.Delete

Application.DisplayAlerts = True
End Sub

Любая помощь с благодарностью. PS программа работает без нареканий без кнопки закрытия.

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