教學/塊屬性
把一張 AutoCAD 圖面的屬性值複製到多張圖面 —— 專案資訊、客戶名稱與地址
更新於 September 30, 2026

圖面集裡常有這樣的工作:某一張圖的標題欄已經填好專案資訊 —— 專案名稱、客戶、現場地址 —— 而一批新圖的這些欄位還寫著 TBD。每張圖上都已經有這個圖塊了,所以要做的不是複製圖塊本身,而是把一個圖塊裡的屬性值複製到其他圖塊裡,同時讓每張圖自己的圖號、圖名和改版維持原樣。
AutoCAD 沒有跨檔案完成這件事的指令。MATCHPROP 比對的是圖層、顏色這類特性,不包含屬性值;ATTEDIT 和「特性」面板一次只能改一個圖塊參照;DATAEXTRACTION 只能匯出;ATTOUT/ATTIN 透過文字檔來回轉換,一次也只能處理一張圖。剩下的辦法就是逐張開啟圖面,重複輸入同樣的三個值 —— 既慢,又容易在四十張裡的第四張出錯。
本指南使用 BlockSync:把所有圖面的標題欄匯出到同一個 Excel 活頁簿,在試算表裡完成簡單的複製,再預覽並寫回。範例把 Phase1-A101 的三個屬性複製到五張新的 Phase2 圖面中。
1. 把所有圖面的標題欄匯出到一個活頁簿
2. 找到來源列和要填入的列
活頁簿中每個圖塊佔一個分頁,每個圖塊參照佔一列:左邊是檔名和控制代碼,後面是每個屬性標籤各一欄。這裡 Phase1-A101 是來源圖面,它的 CLIENT、PROJECT 和 SITE_ADDRESS 儲存格(綠色標記)裡是要複製的值,而五個 Phase2 列裡的同名儲存格還是 TBD。
各列的順序與檔案在 BlockSync 中加入的順序一致,所以先加入來源圖面,它就是第一列資料。這一點在下一步很重要,因為這樣一次向下填滿就能完成全部複製。

3. 在 Excel 中複製這些值
在 CLIENT 欄中,選取來源儲存格並一直往下選到要填入的最後一列,然後按 Ctrl+D(向下填滿,Fill Down)。對 PROJECT 和 SITE_ADDRESS 重複同樣的操作。這些欄不必相鄰,中間的欄 —— REV、SHEET_NO、TITLE —— 維持原樣即可。
如果來源列不是第一列,或只想填入部分圖面,就改為複製來源儲存格,再只貼到需要的列。要把某個值複製到另一個屬性裡,就貼到那個屬性的欄。不要更動 _File 和 _Handle 欄:BlockSync 靠它們把每一列比對回它所屬的那個圖塊參照。
有一點要注意:日期,或帶前導零的數字,如果被 Excel 轉成了真正的日期或一般數字,寫回的就是 Excel 顯示的內容。這類值請從以文字形式儲存它們的儲存格複製。完成後儲存活頁簿。

4. 預覽到底哪些屬性會被修改
切換到 Excel → AutoCAD 索引標籤,選擇編輯好的活頁簿,DWG 資料夾維持 Same folder as Excel file。檔案與活頁簿依檔名完全一致來比對。請保持勾選 Automatic backup:它預設就是開啟的,BlockSync 會在寫入任何內容之前把每個檔案複製到備份資料夾。
Diff preview 依檔案列出這些變更。這裡它顯示預覽了 6 個檔案、15 處屬性變更、0 處被阻擋:五張 Phase2 圖面各 3 處。Phase1-A101 顯示 0 處變更,因為它的值本來就與活頁簿一致,所以沒有被勾選。選取一張圖面就能看到它的各列 —— CLIENT、PROJECT 和 SITE_ADDRESS,每個都從 TBD 變成複製過來的值。REV、SHEET_NO 和 TITLE 沒有列出,因為它們沒有變化。在你確認之前,不會對任何圖面寫入內容。
5. 寫回並驗證
按 Write Selected Files 並確認。BlockSync 寫入變更後,會把每個修改過的屬性從圖面中重新讀出來核對。結果畫面顯示 5 個成功、0 個失敗、0 處讀回不一致,並列出每個檔案備份的位置。
如果有任何問題,可以在同一畫面按 Rollback All,從備份還原這次執行中的所有檔案。想再確認一次,可以重新匯出這些圖面:CLIENT、PROJECT 和 SITE_ADDRESS 現在在每張圖面裡都一致,而每張圖面仍保有自己的 REV、SHEET_NO 和 TITLE。
同樣的流程可以在任何圖塊的任何屬性之間複製值,不限於標題欄:把一欄向下填滿、從另一個工作表貼上一欄,或用公式由一個屬性產生另一個。只有你實際更動過的儲存格才會被寫入;沒有變化的列不會被碰。
如果你需要的是把整個圖塊 —— 位置、幾何圖形和它目前持有的值 —— 複製到其他圖面,而不只是值,請改用 BlockCopy 的 Copy Reference。如果圖塊定義變了、又要保留已經填好的值,請看 ATTSYNC 那篇指南。
各畫面和設定的完整說明請見 BlockSync 文件。想在自己的圖面上試用,請下載 BlockSync —— Free 版每批最多支援 10 張圖面。
開始之前 — 常見問題
- AutoCAD 有沒有把屬性值從一張圖面複製到另一張圖面的指令?
- 跨檔案的沒有。MATCHPROP 比對的是圖層、顏色這類特性,不包含屬性值。ATTEDIT 和「特性」面板一次只能編輯一個圖塊參照,DATAEXTRACTION 只能匯出資料,ATTOUT/ATTIN 一次只能處理一張圖面。BlockSync 透過匯出到 Excel 並把編輯後的值寫回,解決了多張圖面的情況。
- 往很多圖面裡複製屬性值,需要 LISP 嗎?
- 不需要。複製在 Excel 裡用向下填滿或複製貼上完成,再由 BlockSync 把結果寫回圖面。沒有任何 AutoLISP 需要撰寫、載入或維護。
- 能只複製一部分屬性,不動圖號和圖名嗎?
- 可以。只有你在活頁簿裡改過的儲存格才會被寫入。範例中 CLIENT、PROJECT 和 SITE_ADDRESS 被更動,而 REV、SHEET_NO 和 TITLE 保留每張圖面自己的值,差異預覽會在儲存任何內容之前如實顯示這一點。
- 如果圖塊的名稱不同,或目標圖塊沒有那個屬性,會怎樣?
- 每個圖塊名稱在活頁簿裡各有一個分頁,你可以把值複製到任何屬性欄。但只有該圖塊參照上存在這個屬性標籤,這一列才能寫入;否則它會在差異預覽中標為 Blocked 並被略過,其餘部分繼續執行。
- 複製錯了值,要怎麼復原?
- 勾選 Automatic backup(預設就是勾選的)時,每個檔案在寫入前都會先備份。結果畫面上的 Rollback All 會還原這次執行中的所有檔案,Excel → AutoCAD 索引標籤上的 Restore Backup… 則可以從備份資料夾還原檔案。
- 執行這個需要什麼條件?
- Windows 10/11 上已授權的完整版 AutoCAD 2021–2027;不支援 AutoCAD LT。Free 版每批最多處理 10 張圖面,其中包含預覽、寫回和備份。