Vba: как удалить листы без подсказки и предупреждения
Когда вы используете метод «Удалить» в VBA для удаления определенного листа в книге, Excel выдаст запрос с вопросом, уверены ли вы, что хотите удалить этот лист.
Однако вы можете использовать следующий синтаксис в VBA, чтобы удалить лист без окна подсказки или предупреждения:
SubDeleteSheets ()
'turn off display alerts
Application.DisplayAlerts = False
'delete Sheet1
Sheets(" Sheet1 ").Delete
'turn back on display alerts
Application.DisplayAlerts = True
End Sub
Этот конкретный макрос удаляет лист с именем Лист1 без каких-либо подсказок или предупреждений.
Строка Application.DisplayAlerts=False сообщает VBA отключить все отображаемые оповещения в Excel.
Затем мы используем метод Удалить для удаления определенного листа.
Затем мы используем Application.DisplayAlerts=True , чтобы повторно включить отображение предупреждений.
В следующем примере показано, как использовать этот синтаксис на практике.
Пример. Используйте VBA для удаления листа без подсказки или предупреждения.
Предположим, у нас есть следующая книга Excel, содержащая три листа:
Теперь предположим, что мы хотим создать макрос для удаления листа с именем Sheet1 .
Предположим, мы создаем следующий макрос:
SubDeleteSheets ()
'delete Sheet1
Sheets(" Sheet1 ").Delete
End Sub
Когда мы запустим этот макрос, мы получим сообщение с вопросом, уверены ли мы, что хотим удалить этот лист:
Однако мы можем создать следующий макрос для удаления Листа 1 без каких-либо подсказок:
SubDeleteSheets ()
'turn off display alerts
Application.DisplayAlerts = False
'delete Sheet1
Sheets(" Sheet1 ").Delete
'turn back on display alerts
Application.DisplayAlerts = True
End Sub
Когда мы запускаем этот макрос, лист с именем Лист1 автоматически удаляется, и никаких подсказок не появляется:
Обратите внимание, что Лист1 был удален, а два других листа остались нетронутыми.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:
VBA: как посчитать количество листов в книге
VBA: как извлечь данные из другой книги
VBA: как вставить несколько строк