การให้ชื่อไว้กับเซลล์หรือช่วงเซลล์จำนวนมากจะทำให้ไฟล์มีขนาดใหญ่ขึ้น นอกจากนี้ยังต้องตรวจตราเสมอว่ามีชื่อที่ Link มาจากไฟล์อื่นที่ไม่ใช้แล้วหรือไม่ เป็นชื่อที่เป็น Error หรือไม่ หากไม่ใช้ชื่อนั้น ๆ แล้วควรจะทำการลบชื่อทิ้งไป การลบชื่อทำได้โดยเข้าเมนู Formulas > Name Manager ซึ่งการเข้ามาลบด้วย Manual เช่นนี้ย่อมไม่สะดวกหากมีชื่อที่ต้องลบจำนวนมาก
หากต้องการลบชื่อจำนวนมาก ๆ ออกทั้งหมดในคราวเดียวควรใช้ VBA ซึ่ง Code มีเพียงไม่กี่บรรทัดตามด้านล่าง
Sub DeleteNames()
Dim n As Name
On Error Resume Next
For Each n In Names
n.Delete
Next n
End Sub
กรณีที่ Named range มีจำนวน 1,000 รายการขึ้นไปการลบแบบ Loop ด้วย For Each…Next จะใช้เวลามาก ควรเปลี่ยนไปเป็น For…Next และเป็นการ Loop แบบ ถอยหลังแทนตามด้านล่าง
Sub DeleteNames()
Dim i As Long
On Error Resume Next
For i = Names.Count To 1 Step -1
Names(i).Delete
Next i
End Sub
Revised: January 28, 2017 at 16:31


สุดยอดครับหามานานละ