CADXChange

教學/圖面標準

批次替換多張圖面裡的舊圖塊 — 一次換掉每張 DWG 的圖框、Logo 或符號

更新於 November 5, 2026

使用 BlockCopy 製作
BlockCopy 升級六張圖面圖框之後的結果清單,每個檔案都已完成

公司換了新圖框、新 Logo,或是某個標準符號出了新版本,專案裡每張圖都得換掉。一張圖很簡單,五十張就成了論壇上常有人求助的苦差事:開檔,在舊圖塊的位置插入新圖塊,手動把屬性值抄過去,刪掉舊的,存檔,再來一次。

AutoCAD 內建的指令解決不了這件事。重新定義圖塊(用同名的 BLOCK,或 INSERT 的「重新定義」選項)只在新舊圖塊同名時有效,而且只作用在目前開啟的那張圖。改名無法把兩個不同的圖塊合併,拿新圖塊直接蓋掉舊的,舊圖塊帶的屬性值又會不見。

這篇用 CADXChange Toolkit 裡 BlockCopy 的 Upgrade Version 分頁,把一批圖面裡的一個圖塊換成另一個。每個舊參照都原地替換,位置、旋轉、比例和圖層不變,屬性值轉到新圖塊上。範例把六張圖裡的 TITLEBLOCK 換成 TITLEBLOCK_V2。

1. 先把新圖塊放進一張來源圖

新圖塊必須以圖塊定義的形式存在於一張工具讀得到的圖裡,這張圖就是「來源圖」。它可以是已經在用這個圖塊的圖(範例中 Source-TitleBlockV2 的圖框就是 TITLEBLOCK_V2),也可以是定義了這個圖塊的樣板或符號庫。目標圖事先不需要有它,BlockCopy 會把定義帶進去。

先確認新圖塊帶的屬性標籤是不是你想保留的那些。只有新圖塊裡有同名標籤的屬性,值才能保留;只出現在新圖塊的標籤,從它自己的預設值開始;新圖塊裡沒有的標籤,舊值會被丟掉。

2. 選好新圖塊、舊圖塊和要更新的圖面

開啟 BlockCopy,切到 Upgrade Version。瀏覽到來源圖,在清單裡選新圖塊(v2);清單上的參照數量,加上可以看屬性清單的 View 連結,能幫你確認沒選錯。

按 Add files 加入要更新的圖面。在 Old blocks to replace (v1) 底下,BlockCopy 會列出這些圖裡找到的圖塊定義,選你要淘汰的那個,這裡是 TITLEBLOCK。

維持勾選 Automatic backup。每張圖在修改之前,都會先複製到備份資料夾。

3. 開始升級

按 Upgrade Now。這一步沒有預覽,所以備份就是你的保險。BlockCopy 會在每張圖裡把舊圖塊的所有參照換成新圖塊並存檔。清單會逐張顯示結果,例如 Replaced 1 instance(s) of TITLEBLOCK with TITLEBLOCK_V2。

每個新參照的屬性,依新定義裡的位置排列,再填入舊值,所以有人手動挪過的屬性會回到定義的位置。如果圖塊名稱不變,又想保留手動調整過的屬性位置,請改用 Sync Update。

某一張圖失敗時,其餘的會繼續處理。打開那張圖的 Details 可以看到備份放在哪裡;Rollback 能讓這一張圖原樣還原,Restore Backup 則能還原先前任何一次執行的圖面。

4. 確認沒有東西不見

最快的檢查方法是把圖面讀回來。把它們加到 BlockSync 的 Blocks → Excel 分頁:圖塊清單裡現在是 TITLEBLOCK 參照 0 次,TITLEBLOCK_V2 參照 7 次、分布在 7 個檔案,也就是六張升級過的圖加上來源圖。勾選 TITLEBLOCK_V2 匯出到 Excel,每張圖一列,圖號、版次、圖名都在。

範例中我們把這六張圖在升級前後各匯出一次。圖號、版次、圖名、插入點和旋轉角度完全一樣,只有圖塊名稱和每個參照的控制代碼(handle)不同。

舊定義不會被刪掉,被換掉的只有參照,所以它還留在圖裡,只是沒有參照了。準備好之後用 PURGE 清掉,也可以用 LayerSync 一次清理整個資料夾。

升級之後有兩件事要知道。替換進去的參照是新物件、有新的控制代碼,所以升級之前匯出的 Excel 不能再寫回,要先重新匯出。另外,只存在於舊圖塊上的屬性值不會轉過去,開始前最好先對照新舊兩個圖塊的屬性清單。

如果圖塊名稱沒變、只是定義改了,請用 Sync Update,而不是 Upgrade Version。Toolkit 有 30 天完整試用,決定之前可以先拿真實專案的副本跑一遍。

用你自己的圖面試一試

CADXChange Toolkit 可以對整個資料夾的圖面做這件事,先預覽、先備份。30 天試用包含全部功能。

開始免費試用 →

開始之前 — 常見問題

AutoCAD 能不能在很多張圖裡,把一個圖塊換成名稱不同的另一個圖塊?
它自己做不到。重新定義圖塊只在新舊圖塊同名時有效,而且只作用在目前開啟的圖;改名無法合併兩個不同的圖塊,直接覆蓋舊圖塊又會丟掉舊圖塊帶的屬性值。BlockCopy 的 Upgrade Version 可以在整批圖面裡把一個圖塊換成另一個。
要換掉每張圖的圖框或 Logo,一定要用 LISP 嗎?
不用。在 BlockCopy 裡選好新圖塊、舊圖塊和圖面,一次執行就換完,不必寫、也不必除錯任何程式。
位置、比例和屬性值會保留嗎?
每個舊參照都原地替換,位置、旋轉、比例和圖層不變。屬性值依標籤轉到新圖塊上:新圖塊裡有同名標籤的屬性才能保留值;只出現在新圖塊的標籤從自己的預設值開始;新圖塊裡沒有的標籤會被丟掉。屬性依新定義裡的位置排列。
有預覽嗎?要怎麼復原?
沒有預覽這一步,所以備份就是保險。勾選 Automatic backup 後,每張圖修改前都會先複製到備份資料夾。Rollback 能讓一張圖原樣還原,Restore Backup 能還原先前任何一次執行的圖面,程式關掉之後也可以。某一張圖失敗時,其餘的會繼續處理。
舊的圖塊定義會怎麼樣?
不會被刪掉。被換掉的只有參照,定義會留在圖裡,沒有任何參照,直到你用 PURGE 清掉它。
執行這個需要什麼?
一台 Windows 10 或 11 的電腦,加上你的圖面。AutoCAD 不必開著。CADXChange Toolkit 附 30 天完整試用;試用結束後,讀取、掃描和比較仍可使用,把修改後的圖面寫入則需要授權。

相關指南