如果工作表名稱不在列表中,如何刪除工作表


Microsoft Excel 是一款功能強大的電子表格程式,通常用於資料分析、計算和資訊組織。在使用 Excel 時,您可能會遇到需要刪除不在預定列表中的工作表的情況。本教程將指導您使用 VBA(Visual Basic for Applications)程式設計在 Excel 中刪除工作表。在 Excel 中,VBA 允許我們自動化操作並建立獨特的解決方案。我們可以使用 VBA 快速檢測和刪除不在我們所需列表中的工作表。

如果工作表名稱不在列表中,則刪除工作表

在這裡,我們將首先建立一個 VBA 模組,然後執行它來完成任務。讓我們來看一個簡單的過程,瞭解如何在 Excel 中刪除名稱不在列表中的工作表。

步驟 1

考慮任何包含一個工作表中工作表列表的 Excel 工作簿。

首先,右鍵單擊工作表名稱,然後選擇“檢視程式碼”以開啟 VBA 應用程式。

右鍵單擊 > 檢視程式碼。

步驟 2

然後單擊“插入”,選擇“模組”,並將下面的程式碼複製到文字框中。

插入 > 模組 > 複製。

示例

Sub Deletenotinlist()
    Dim i As Long
    Dim cnt As Long
    Dim xWb, actWs As Worksheet
    Set actWs = ThisWorkbook.ActiveSheet
    cnt = 0
    Application.DisplayAlerts = False
    For i = Sheets.Count To 1 Step -1
        If Not ThisWorkbook.Sheets(i) Is actWs Then
            xWb = Application.Match(Sheets(i).Name, actWs.Range("A2:A6"), 0)
            If IsError(xWb) Then
                ThisWorkbook.Sheets(i).Delete
                cnt = cnt + 1
            End If
        End If
    Next
    Application.DisplayAlerts = True
    If cnt = 0 Then
        MsgBox "Not find the sheets to be seleted", vbInformation, "Kutools for Excel"
    Else
        MsgBox "Have deleted" & cnt & "worksheets"
    End If
End Sub

在程式碼中,A2:A6 是包含工作表名稱列表的單元格範圍。

步驟 3

然後單擊 F5 執行程式碼並單擊“確定”。然後您可以看到不在列表中的工作表將被刪除,並且會顯示一條訊息。

結論

在本教程中,我們使用了一個簡單的示例來演示如何在 Excel 中刪除名稱不在列表中的工作表。

更新於:2023年7月20日

瀏覽量:186

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告