2021年8月7日 星期六

VBA:刪除工作頁內不要的工作表(關鍵字檢查)

刪除工作頁內不要的工作表

INSTR傳回某個字串在另一個字串內第一個出現的位置

執行刪除都會跳出警告對話框,所以要關掉:Application.DisplayAlerts = False

透過工作頁頁數來逐頁檢查,其實也可以用FOR EACH拉,

都好方法很多,問題僅有一個,哈。

EX1:

透過工作表名稱來檢查,以INSTR與自己設定的關鍵字檢查後,當出現就執行刪除

 SUB SHEET_CHECK_DELETE()

CHECK = "P" & "S" & "10" '自己設定的關鍵字檢查

    For P = Sheets.Count To 1 Step -1

        If InStr(CHECK, Sheets(P).Name) > 0 Then

        Application.DisplayAlerts = False '關閉警告

           Sheets(P).Delete '刪除        

        Application.DisplayAlerts = True '開啟警告

        End If

   Next

END SUB


刪除工作頁內不要的工作表動態版

EX2: 動態關鍵字版

 SUB SHEET_CHECK_DELETE(CHECK AS STRING)

    For P = Sheets.Count To 1 Step -1

        If InStr(CHECK, Sheets(P).Name) > 0 Then

                Application.DisplayAlerts = False '關閉警告

                Sheets(P).Delete '刪除

                Application.DisplayAlerts = True '開啟警告

        End If

   Next

END SUB

感謝M01 snare 大大救了頭暈的我

沒有留言:

張貼留言

指數變化(2026.01.23) 開始透過AI做整理

  指數變化(2026.01.23) 開始透過AI做整理 上周焦點: 1/13消費者物價相關 美國消費者物價指數(CPI)年增率:2.7%(符合預期),月增率:0.3%。 美國核心CPI年增率:2.6%。 1/14企業庫存、房市、能源及房貸相關 美國企業庫存月增率:0.3%(10...