Прескочи на основното съдържание

Как да изтрия всички празни работни листове в Excel?

Автор: Xiaoyang Последна промяна: 2013-10-25

Ако имате работна книга, която има много работни листове, междувременно има някои празни работни листове в нея. И сега искате да изтриете празните работни листове, за да запазите или архивирате файла. Как бихте могли да търсите празните листове от множество работни листове и да ги изтриете автоматично?

Изтрийте всички празни работни листове с VBA код

Изтрийте всички празни работни листове с Kutools за Excel


стрелка син десен балон Изтрийте всички празни работни листове с VBA код

За вас е неприятно да проверявате за празни работни листове и да ги премахвате един по един, но със следния VBA код можете лесно да изтриете всички празни работни листове наведнъж.

1. Задръжте натиснат ALT + F11 ключове и отваря Microsoft Visual Basic за приложения прозорец.

2. Щракнете Поставете > Модулии поставете следния код в прозореца на модула.

VBA: изтрийте всички празни работни листове

Sub DeleteBlankWorksheets() 'Update 20130830 Dim Ws As Worksheet On Error Resume Next Application.ScreenUpdating = False Application.DisplayAlerts = False For Every Ws In Application.Worksheets If Application.WorksheetFunction.CountA(Ws.UsedRange) = 0 Then Ws.Delete End Ако Next Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub

3. След това натиснете F5 и всички празни работни листове се изтриват наведнъж.


стрелка син десен балон Изтрийте всички празни работни листове с Kutools за Excel

Ако не сте запознати с кода на VBA, мога да ви представя лесен инструмент - Kutools за Excel, Със своята Изтриване на празни работни листове можете да премахнете всички празни работни листове с едно щракване.

Kutools за Excel включва повече от 300 удобни инструмента на Excel. Безплатно изпробване без ограничение за 30 дни. Махни го сега.

Когато сте инсталирали Kutools за Excel, моля, направете следните стъпки:

1. Щракнете Enterprise > Инструменти за работни листове > Изтриване на празни работни листове, вижте екранна снимка:

doc-delete-blank-sheets1

2. И ще се появи поле за подкана, за да ви напомни дали искате да изтриете всички празни работни листове или не, вижте екранна снимка:

doc-delete-blank-sheets2

3, След това кликнете Да, а празните работни листове са изтрити успешно. Вижте екранни снимки:

doc-delete-blank-sheets3
-1
doc-delete-blank-sheets4

Ако искате да научите повече за тази функция, моля щракнете Изтриване на празни работни листове.


Свързана статия:

Как да изтриете скрити работни листове в Excel?

Най-добрите инструменти за продуктивност в офиса

🤖 Kutools AI помощник: Революционизирайте анализа на данни въз основа на: Интелигентно изпълнение   |  Генериране на код  |  Създаване на персонализирани формули  |  Анализирайте данни и генерирайте диаграми  |  Извикване на функциите на Kutools...
Популярни функции: Намерете, маркирайте или идентифицирайте дубликати   |  Изтриване на празни редове   |  Комбинирайте колони или клетки без загуба на данни   |   Кръг без формула ...
Супер търсене: VLookup с множество критерии    VLookup с множество стойности  |   VLookup в няколко листа   |   Размито търсене ....
Разширен падащ списък: Бързо създаване на падащ списък   |  Зависим падащ списък   |  Падащ списък с множество избори ....
Мениджър на колони: Добавете конкретен брой колони  |  Преместване на колони  |  Превключване на състоянието на видимост на скритите колони  |  Сравнете диапазони и колони ...
Препоръчани функции: Мрежов фокус   |  Изглед на дизайна   |   Голям формула бар    Мениджър на работни книги и листове   |  Библиотека с ресурси (Автоматичен текст)   |  Избор на дата   |  Комбинирайте работни листове   |  Шифроване/декриптиране на клетки    Изпращайте имейли по списък   |  Супер филтър   |   Специален филтър (филтър получер/курсив/зачертано...) ...
Топ 15 комплекта инструменти12 Текст Инструменти (добавяне на текст, Премахване на символи, ...)   |   50 + Графика Видове (диаграма на Гант, ...)   |   40+ Практичен формули (Изчислете възрастта въз основа на рождения ден, ...)   |   19 вмъкване Инструменти (Въведете QR код, Вмъкване на картина от пътя, ...)   |   12 Конверсия Инструменти (Числа към думи, Валутен обмен, ...)   |   7 Обединяване и разделяне Инструменти (Разширено комбиниране на редове, Разделени клетки, ...)   |   ... и още

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Estimado, no se si me pueda ayudar. Tengo esta macro precisamente para eliminar hojas vacías, pero no logro hacer que funcione al correrla una sola vez, la tengo que ejecutar dos veces para que borre todas las hojas vacías. Que esta fallando para que haga la tarea de borrar todas las hojas en una sola corrida.

La macro es:

Sub Buscar_Hojas_Vacías_y_Eliminarlas2()

Dim Nhojas As Integer
Dim i As Integer

On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False

Nhojas = Sheets.Count

For i = 1 To Nhojas

If WorksheetFunction.CountA(Sheets(i).UsedRange) = 0 And Sheets(i).Shapes.Count = 0 Then

Sheets(i).Delete

Else
' Nada
End If
Next i

On Error GoTo 0
Application.ScreenUpdating = True
Application.DisplayAlerts = True

End Sub

Gracias, espero sus comentarios.
This comment was minimized by the moderator on the site
I cannot speak your language but I see a flaw in your code.
The problem is >> Nhojas = Sheets.Count
And then you depend on Nhojas but when you delete a sheet you do not reduce Nhojas by 1

So just add this line to your code after "Sheets(i).Delete" and before "Else":
Nhojas = Nhojas - 1

Done :)

You have done a good job though, but you need to dry run your code when you try and debug the code.
This comment was minimized by the moderator on the site
Public member 'WorksheetFunction' on type 'WorkbookClass' not found.
i'm using Interop.Excel
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations