小編以前寫的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.終於沒有高負載了 省電!!!
沒有留言:
張貼留言