Excel 清除無效連結 VBA實戰系列 - 會計
By Irma
at 2020-04-01T01:15
at 2020-04-01T01:15
Table of Contents
下載(xlam):https://tinyurl.com/rw2tmex
xlam增益集使用方法:https://i.imgur.com/1KvzYVc.gif
清除完成後視窗:https://i.imgur.com/tm7cjFx.jpg
用途:清除活頁簿無效名稱,加速檔案開啟。
客戶提供的資料常常都會連到他們公司內部自己的Excel活頁簿,
如果有大量名稱參照到無效的位址會導致開啟活頁簿速度降低,
以一般目前電腦的運算速度即使有幾百張工作表或幾萬列資料,
開啟的時間都不會太長,但Excel在解析大量外部連結時會導致開啟速度異常下降。
如果執行很久,代表刪除的名稱很多,以25,000個無效名稱測試,會花3~5分鐘跑。
原始碼如下,會開啟VBE(ALT+F11)的話可以新增模組後複製貼上,再按F5執行即可:
Sub RemoveInvalidNames()
Dim i As Integer
Dim name As name
Dim workbookNames As Names
Set workbookNames = ActiveWorkbook.Names
i = 0
For Each name In workbookNames
If InStr(name.Value, "#REF") > 0 Then
i = i + 1
ActiveWorkbook.Names(name.name).Delete
End If
Next
MsgBox "清理完成,共清除" + Str(i) + "個無效名稱!"
End Sub
--
Accoding: https://www.facebook.com/AccodingTW/
--
xlam增益集使用方法:https://i.imgur.com/1KvzYVc.gif
清除完成後視窗:https://i.imgur.com/tm7cjFx.jpg
用途:清除活頁簿無效名稱,加速檔案開啟。
客戶提供的資料常常都會連到他們公司內部自己的Excel活頁簿,
如果有大量名稱參照到無效的位址會導致開啟活頁簿速度降低,
以一般目前電腦的運算速度即使有幾百張工作表或幾萬列資料,
開啟的時間都不會太長,但Excel在解析大量外部連結時會導致開啟速度異常下降。
如果執行很久,代表刪除的名稱很多,以25,000個無效名稱測試,會花3~5分鐘跑。
原始碼如下,會開啟VBE(ALT+F11)的話可以新增模組後複製貼上,再按F5執行即可:
Sub RemoveInvalidNames()
Dim i As Integer
Dim name As name
Dim workbookNames As Names
Set workbookNames = ActiveWorkbook.Names
i = 0
For Each name In workbookNames
If InStr(name.Value, "#REF") > 0 Then
i = i + 1
ActiveWorkbook.Names(name.name).Delete
End If
Next
MsgBox "清理完成,共清除" + Str(i) + "個無效名稱!"
End Sub
--
Accoding: https://www.facebook.com/AccodingTW/
--
Tags:
會計
All Comments
Related Posts
VBA執行百貨貿易業收現天數財務分析
By Annie
at 2020-03-31T23:24
at 2020-03-31T23:24
109會研所非業配自修心得文
By Poppy
at 2020-03-31T12:49
at 2020-03-31T12:49
北一高會課本
By Tom
at 2020-03-30T22:01
at 2020-03-30T22:01
北ㄧ會計師高會課本一套
By Hazel
at 2020-03-30T13:31
at 2020-03-30T13:31
成管會問題
By Edith
at 2020-03-29T21:50
at 2020-03-29T21:50