2021年7月12日 星期一

VBA_批次刪除工作表

         本例使用dictionary方式記錄不刪的工作表,然後對檔案中所有工作表檢查,只要不符合就刪掉,用VBA刪除工作表可以不顯示工作表就刪掉,對於檔案瘦身挺好用,這裡還用到inputbox對近期兩個工作表以輸入的方式保留。(2-3個月沒寫,的確有點生疏)



 Sub  批次刪除工作表()

    '2021/7/12 

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False    
    
   Dim D_不刪
    
    Set D_不刪 = CreateObject("scripting.dictionary")
    
    Sh_當期 = InputBox("輸入當其表格名稱", , Format(Date, "yyyymmdd"))
    
    Sh_上期 = InputBox("輸入當其表格名稱", , Format(Date - 7, "yyyymmdd"))
    
    sh_不刪 = Array("月簡表", "簡表", "月比較A", "月明細", "周比較", Sh_當期, Sh_上期)
    
    For i_sh = LBound(sh_不刪) To UBound(sh_不刪)
        D_不刪(sh_不刪(i_sh)) = i_sh
    Next
  
    For i_sh = Sheets.Count To 1 Step -1
        If D_不刪.exists(Sheets(i_sh).Name) = False Then Sheets(i_sh).Delete
    
    Next
End Sub

沒有留言:

張貼留言

使用Gemini撰寫投資策略執行碼

 本週我嘗試使用 AI 來測試「蹺蹺板投資策略」。有趣的是,付費版 ChatGPT 在撰寫較複雜的策略程式碼時,表現並不如預期,反而是免費版的 Gemini 表現更為出色。不僅能快速生成可執行的程式,還能在我進行策略修正的過程中,協助將提示詞進一步結構化,讓程式更貼近我原本的投資...