VBA Видалити або очистити аркуш

Цей підручник навчить вас видаляти або очищати аркуш за допомогою VBA.

Видалити аркуш

Використовуйте команду delete, щоб видалити аркуш.

Видалити аркуш за назвою

1 Аркуші ("Аркуш1"). Видалити

Видалити аркуш за номером індексу

Цей код видаляє перший робочий аркуш у книзі:

1 Аркуші (1). Видалити

Цей код видаляє останній аркуш у книзі:

1 Аркуші (Таблиці. Кількість). Видалити

Видалити аркуш без запиту

Під час спроби видалити аркуш Excel попросить вас підтвердити свою дію:

Ви можете вимкнути ці підказки (сповіщення), увімкнувши DisplayAlerts:

123 Application.DisplayAlerts = НеправдаАркуші ("Аркуш1"). ВидалитиApplication.DisplayAlerts = Правда

Видалити аркуш, якщо він існує

Якщо ви спробуєте видалити аркуш, який не існує, VBA видасть помилку. За допомогою On Error Resume Next ви можете повідомити VBA видалити аркуш, якщо він існує, інакше перейдіть до наступного рядка коду:

123 Увімкнути Помилка Відновити ДаліАркуші ("Аркуш1"). ВидалитиПомилка Перейти до 0

Ви також можете скористатися нашою функцією RangeExists, щоб перевірити, чи існує аркуш, і якщо так, видаліть його .:

123 Якщо RangeExists ("Sheet1") ТодіАркуші ("Аркуш1"). ВидалитиЗакінчити Якщо

Очистити аркуш

Цей код очистить весь аркуш вмісту, формати та все інше:

1 Аркуші ("Аркуш1"). Клітинки. Очистити

Очистити вміст аркуша

Цей код очистить весь вміст аркуша. Це залишить форматування, коментарі та все інше:

1 Аркуші ("Аркуш1"). Осередки.ЧистотаВміст

Очистити аркуш Використовуваний діапазон

У наведених вище прикладах буде очищено ВСІ комірки на аркуші. Це може зайняти багато часу на великих аркушах. Якщо замість цього використовувати UsedRange, VBA видалить лише "використані" комірки, які містять значення, формати тощо.

1 Аркуші ("Лист1"). UsedRange.Clear
wave wave wave wave wave