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.終於沒有高負載了 省電!!!






沒有留言:

張貼留言

指數變化(2024.05.17)

指數變化(2024.05.17) 上周焦點:         5/9當周焦點                          事實:fed與非農就業,引起投資市場對降息有加速,但肯定的是,fed說不加息了。                        美國密西根大學信心指數 ...