2023年8月17日 星期四

VBA:名稱管理員 刪除無效名稱

小編以前寫的VBA,最近使用總覺得怪,怎沒再跑資料還會占用20% CPU 效能,

經過一番調查後,

發現原來是無效的名稱管理員"名稱"在做背景搞鬼阿QQ,

那這樣每次執行VBA後,要有一個刪除"名稱"的動作才對。

那怎會這樣呢!!!

原因:

圖1.語法

以前學藝不精,愛用這個就產生不少後遺症在EXCEL裡面 XD
QUERYTABLE.ADD 這個好用,但實在是太多要注意了,沒想到是造成我
無效的名稱管理員"名稱"
呵呵

                            
圖2.名稱管理員

超多無效的拉,導致EXCEL會重複一個一個檢查下去 哈

 參考來源

小編操考網路上諸多大神,加上自己的一點鑽研,修改如下

Sub DeleteNames_BYTAGNAME()

'Update 20140314

Dim xName As Name

For Each xName In Application.ActiveWorkbook.Names    

    Debug.Print xName.Name    

    If InStr(xName.Name, "外部") > 0 Then     '如果名稱中,有字眼含有外部,就刪除該名稱

    xName.Delete    

    End If    

Next

End Sub

圖3.不對的通通不見

圖4.終於沒有高負載了 省電!!!






沒有留言:

張貼留言

我的雷達:20260304 突破海峽!!!

  2號指標也亮燈,就衝!!!!! 更新:20260307 過一段時間了,才敢貼交易明細 哈,因為跟外資持股對答案 2026/3/9 訊號再次出現(數字衝高到1617),就買買買買買買 但我還是豬頭買了台達化