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 大大救了頭暈的我

沒有留言:

張貼留言

我的雷達:2024/11/15

  似乎有一種不安的味道