教學/塊屬性
把圖塊屬性匯出到 Excel 再匯入回來 — 用試算表一次填好多張圖面的屬性
更新於 September 30, 2026

屬性資料很少只留在圖面裡。它要匯出到試算表裡做審閱、做採購清單、填供應商的型號,改好的值還得回到圖塊裡。AutoCAD 能把資料匯出去:DATAEXTRACTION 產生表格,ATTOUT 寫出文字檔。麻煩的是回程。
DATAEXTRACTION 只能匯出,ATTOUT 和 ATTIN 透過文字檔來回轉換,一次也只能處理一張圖面。所以要往一套圖面裡幾十個閥門圖塊填型號,就得逐張開啟圖面重新輸入,或者寫一段 LISP 再把你的 DWG 交給它。
本指南用 BlockSync 完成整個往返:把所有圖塊的屬性匯出到同一個 Excel 活頁簿,用 Excel 的任何方法改值,再先預覽、先備份地寫回去。範例是六張管線圖面,共 28 個 VALVE 圖塊,每個都帶 TAG、SIZE、TYPE 和 MODEL 屬性。MODEL 還寫著 TBD,要依供應商清單來填,清單以閥門類型和口徑為鍵。Free 版每次執行最多處理 10 張圖面。
1. 把圖塊匯出到 Excel
2. 看看匯出的內容
B_VALVE 分頁每個圖塊參照佔一列,涵蓋所有圖面。左邊是系統欄:檔名和物件控制代碼,BlockSync 就是靠它重新找到每個圖塊。右邊是每個屬性標籤各一欄,這裡是 MODEL、SIZE、TAG 和 TYPE。每個閥門的 MODEL 仍是 TBD,TAG 仍是 V-000。
屬性欄裡的值你可以改。但不能新增圖塊裡沒有的屬性,也不要動 _File 和 _Handle。

3. 在 Excel 裡填值
把供應商的清單作為另一張工作表放進同一個活頁簿,這裡是一個 Vendor list 分頁,每個 TYPE-SIZE 組合佔一列,例如 GATE-DN25 對應的型號是 GV-025。
然後用它來填 MODEL 欄。在這張表裡 TYPE 是 N 欄、SIZE 是 L 欄,所以第一列用 =VLOOKUP(N3&"-"&L3,'Vendor list'!$A$2:$B$13,2,FALSE),一直向下填滿到最後一個閥門。別的辦法也一樣可行:貼上一欄、用尋找取代,或者用別的欄拼出一個值。BlockSync 寫回的是儲存格顯示的內容。日期和帶前導零的數字請以文字輸入,避免 Excel 改變它們的格式。
儲存活頁簿,盡量放在圖面所在的資料夾裡。

4. 檢查填好的表
現在每個 MODEL 儲存格都有了型號,TAG、SIZE 和 TYPE 維持原樣。繼續之前,先掃一遍這一欄有沒有 #N/A 之類的錯誤。類型和口徑不在供應商清單裡的閥門,正是這一步要抓出來的。

5. 寫入任何內容之前先預覽
切換到 Excel → AutoCAD 索引標籤,選擇這個活頁簿。勾選 Same folder as Excel file 時,它會在活頁簿旁邊找圖面,依檔名比對,每一列再依檔案和控制代碼比對到它的圖塊。保持勾選 Automatic backup。
Diff preview 顯示預覽了 6 個檔案、28 處屬性變更、0 處被阻擋。選取一張圖面就能看到每處變更:在 VALVE 上,MODEL 屬性從 TBD 變為 GV-025、BV-040 等等。在你確認之前不會寫入任何內容。
6. 寫回並驗證
按 Write Selected Files 並確認。BlockSync 會先備份每張圖面,再寫入,然後把每個更動過的屬性從圖面中重新讀出來核對。結果畫面顯示 6 個成功、0 個失敗、0 處讀回不一致,並列出每份備份的位置。Rollback All 可以把每張圖面還原。
想獨立核對一次,就重新匯出這些圖面。在這個例子裡,28 個 MODEL 值都和供應商清單一致,而 TAG 仍是 V-000,因為只有被更動的屬性才會被寫入。
同樣的往返適用於任何圖塊上的任何屬性,不只是閥門型號:審閱意見欄、修正後的描述、採購狀態,或者對照主清單檢查過的值。無法寫入的列會被標為 Blocked,其餘部分繼續執行,例如控制代碼已不存在、那個實例上沒有該標籤、動態屬性的值不在允許清單裡,或者值來自欄位。
如果圖塊需要一個它還沒有的屬性,請先更新圖塊定義;ATTSYNC 那篇指南講了怎樣做到這一點又不遺失值。各畫面和設定的完整說明請見 BlockSync 文件。想在自己的圖面上試用,請下載 BlockSync —— Free 版每批最多支援 10 張圖面。
開始之前 — 常見問題
- 要怎麼把很多 AutoCAD 圖面裡的圖塊屬性匯出到 Excel?
- 在 BlockSync 裡加入圖面,勾選要的圖塊,按 Extract to Excel。它會為所有圖面中的每個圖塊參照各寫一列,每個屬性標籤一欄,每個勾選的圖塊在活頁簿裡各佔一個分頁。
- 要怎麼把 Excel 裡的值匯回圖塊裡?
- 在活頁簿裡編輯屬性欄,然後使用 Excel → AutoCAD 索引標籤。BlockSync 依檔案和物件控制代碼把每一列比對到它的圖塊,先顯示每處更動的差異預覽,備份之後再寫入,並把每處更動讀回來確認已經生效。
- 為什麼不用 DATAEXTRACTION 或 ATTOUT 和 ATTIN?
- DATAEXTRACTION 只能匯出資料,無法把編輯過的值寫回去。ATTOUT 和 ATTIN 透過文字檔來回轉換,但一次只能處理一張圖面。BlockSync 一次執行就能對整套圖面完成往返。
- 試算表裡能用公式或查詢表嗎?
- 可以。BlockSync 寫回的是儲存格顯示的內容,所以對供應商清單做 VLOOKUP、由其他欄拼出來的公式、貼上的一欄或者尋找取代都可以。日期和帶前導零的數字應以文字輸入,否則 Excel 可能在寫入之前改變它們的格式。
- 能新增屬性或者更動欄位嗎?
- 不能。你可以改圖塊裡已有屬性的值,但不能新增圖塊沒有定義的標籤,而且 _File 和 _Handle 欄必須維持原樣,因為它們標識每個圖塊。如果某一列的標籤在那個圖塊參照上並不存在,它會在預覽裡被標為 Blocked 並被略過。
- 怎麼知道成功了?可以復原嗎?
- 在寫入任何內容之前,差異預覽會顯示每處更動。寫入之後,BlockSync 會把每個更動過的屬性從圖面中讀回來,並回報讀回不一致的數量。勾選 Automatic backup(預設就是勾選的)時,Rollback All 可以還原這次執行中的每張圖面。
- 需要什麼條件?最多能處理多少張圖面?
- Windows 10/11 上已授權的完整版 AutoCAD 2021–2027;不支援 AutoCAD LT。Free 版每批最多處理 10 張圖面,包含匯出、預覽、寫回和備份。Pro 取消這個限制,增加平行處理,寫入動態圖塊屬性也需要 Pro。