定義名稱 Print_Area 無法用Marco刪除
- 帖子
- 13
- 主題
- 6
- 精華
- 0
- 積分
- 25
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- OFFICE 2010
- 閱讀權限
- 10
- 性別
- 男
- 註冊時間
- 2010-8-8
- 最後登錄
- 2011-10-14
|
定義名稱 Print_Area 無法用Marco刪除
小弟有一檔案是從Excel 97 一直使用到Excel 2003.
這檔案內含有多個有效及無效的定義名稱 (Name)
目前作業系統及文書處理系統是Window 7及Excel 2007
今日我以Excel 2007建立一個Marco要將舊版本的Excel檔內的所有定義名稱都刪除. 語法如下:
Sub Clearnames()
Dim nas As Name
For Each nas In ActiveWorkBook.Names
nas.Delete
Next
End Sub
結果,小弟發現,有一個屬於Workbook的定義名稱,名為Print_Area, 還留在檔案裡,而且只能手動刪除.
這是怎麼回事? 我的語法應該沒錯吧.
是版本問題嗎?還是要用其它方式刪除.
我查詢過許多資料, 所使用的語法都與我所列的相同或相似. 而我套用別人的語法後,問題仍在.
懇請大家幫忙處理. 謝謝.
(檔案有上千個,我可沒時間一個一個開檔案手動刪除) |
|
|
|
|
|
|
- 帖子
- 13
- 主題
- 6
- 精華
- 0
- 積分
- 25
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- OFFICE 2010
- 閱讀權限
- 10
- 性別
- 男
- 註冊時間
- 2010-8-8
- 最後登錄
- 2011-10-14
|
回復 2# oobird
試過版大的語法.
結果.定義名稱 Print_Area 仍然存在.
而且其 Refers To 的值也沒被改變. 這可以說是它根本沒被做任何修改或清除.
最後我只能用 Name Manager (Excel 2007的功能之一)來手動刪除.
很奇怪的情況,不是嗎?
我也試著使用錄製巨集的方式來刪除它. 也是沒用. |
|
|
|
|
|
|
- 帖子
- 13
- 主題
- 6
- 精華
- 0
- 積分
- 25
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- OFFICE 2010
- 閱讀權限
- 10
- 性別
- 男
- 註冊時間
- 2010-8-8
- 最後登錄
- 2011-10-14
|
本帖最後由 MRSA 於 2010-11-24 00:36 編輯
回復 5# oobird
每個定義名稱會對應到四個值, 1是參位位址(Refers To), 2是值(Value), 3是定義名稱的Scope (Scope), 4是註解(Comment)
版大所謂的定義名稱錯誤的意思是指以上四個值的哪一個.
我所困惑的是,我在檔案內有許多定義名稱, 很多都是 Value 或 Refers To 有錯誤的(#REF! 或錯誤的外部連結), 但是,許多定義名稱為Print_Area都能被刪除,偏偏就獨獨這個 Print_Area (Value是#REF!, Refers To是=#REF!, Scope是Workbook, Comment是空白)的定義名稱刪除不了.
是Excel 2010 (我也在Excel 2007試過,也有同樣問題) 本身的問題嗎? |
|
|
|
|
|
|