Note: The other languages of the website are Google-translated. Back to English

如何在Excel中刪除所有空白工作表?

同時,如果您的工作簿中包含許多工作表,則其中有一些空白工作表。 現在,您要刪除空白工作表以保存或存檔文件。 您如何從多個工作表中搜索空白表並自動將其刪除?

用VBA代碼刪除所有空白工作表

使用Kutools for Excel刪除所有空白工作表

Office選項卡在Office中啟用選項卡式編輯和瀏覽,並使您的工作更加輕鬆...
Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%
  • 重用任何東西: 將最常用或最複雜的公式,圖表等添加到您的收藏夾中,並在將來快速重用它們。
  • 超過20種文字功能: 從文本字符串中提取數字; 提取或刪除部分文字; 將數字和貨幣轉換為英文單詞。
  • 合併工具:將多個工作簿和工作表合二為一; 合併多個單元格/行/列,而不會丟失數據; 合併重複的行和總和。
  • 分割工具:根據價值將數據分割成多個工作表; 一本工作簿可轉換為多個Excel,PDF或CSV文件; 一列到多列。
  • 跳過粘貼 隱藏/過濾的行; 計數與求和 按背景色; 向多個收件人批量發送個性化電子郵件。
  • 超級過濾器: 創建高級過濾方案並應用於任何工作表; 分類 按星期,日期,頻率等 篩選 用粗體,公式,註釋...
  • 超過300個強大的功能; 適用於 Office 2007-2021 和 365; 支持所有語言; 在您的企業或組織中輕鬆部署。

箭頭藍色右氣泡 用VBA代碼刪除所有空白工作表

對於您來說,檢查空白工作表並一一刪除它們是很麻煩的,但是使用以下VBA代碼,您可以輕鬆地一次刪除所有空白工作表。

1。 按住 ALT + F11 鍵,然後打開 Microsoft Visual Basic for Applications 窗口。

2。 點擊 插入 > 模塊,然後將以下代碼粘貼到“模塊”窗口中。

VBA:刪除所有空白工作表

Sub DeleteBlankWorksheets()'更新20130830在錯誤繼續工作時將Ws作為工作表恢復下一個Application.ScreenUpdating = False Application.DisplayAlerts = False對於Application.Worksheets中的每個Ws如果Application.WorksheetFunction.CountA(Ws.UsedRange)= 0然後Ws.Delete End如果Next Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub

3。 然後按 F5 鍵,並立即刪除所有空白工作表。


箭頭藍色右氣泡 使用Kutools for Excel刪除所有空白工作表

如果您不熟悉VBA代碼,我可以為您介紹一個簡單的工具- Excel的Kutools,其 刪除空白工作表 功能,您可以一鍵刪除所有空的工作表。

Excel的Kutools 包括300多個便捷的Excel工具。 30天免費試用,不受限制。 立即獲取.

安裝Kutools for Excel後,請執行以下步驟:

1。 點擊 企業 > 工作表工具 > 刪除空白工作表,請參見屏幕截圖:

文檔刪除空白表 1

2. 然後將出現一個提示框,提醒您是否要刪除所有空白工作表,請參見屏幕截圖:

文檔刪除空白表 2

3。 然後點擊 ,並且空白工作表已成功刪除。 查看屏幕截圖:

文檔刪除空白表 3
-1
文檔刪除空白表 4

如果您想進一步了解此功能,請單擊 刪除空白工作表.


相關文章:

如何在Excel中刪除隱藏的工作表?


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (3)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
未找到類型“WorkbookClass”的公共成員“WorksheetFunction”。
我正在使用 Interop.Excel
網站主持人對此評論進行了最小化
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 宏 es:

Sub Buscar_Hojas_Vacías_y_Elimnarlas2()

Dim Nhojas 飾 整數
昏暗我作為整數

在錯誤恢復下一頁
Application.ScreenUpdating = False
Application.DisplayAlerts = False

Nhojas = Sheets.Count

對於 i = 1 至 Nhojas

如果 WorksheetFunction.CountA(Sheets(i).UsedRange) = 0 並且 Sheets(i).Shapes.Count = 0 那麼

Sheets(i).刪除

其他
'那達
如果結束
接下來,我

在錯誤轉到0
Application.ScreenUpdating = True
Application.DisplayAlerts = True

END SUB

Gracias, espero sus commentarios。
網站主持人對此評論進行了最小化
我不會說你的語言,但我發現你的代碼有缺陷。
問題是>> Nhojas = Sheets.Count
然後您依賴於 Nhojas,但是當您刪除工作表時,您不會將 Nhojas 減少 1

因此,只需在“Sheets(i).Delete”之後和“Else”之前將此行添加到您的代碼中:
Nhojas = Nhojas - 1

完畢 :)

雖然你做得很好,但是當你嘗試調試代碼時,你需要幹運行你的代碼。
這裡還沒有評論

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護