CADXChange
購買

教學/塊屬性

把圖塊屬性匯出到 Excel 再匯入回來 — 用試算表一次填好多張圖面的屬性

使用 BlockSync 製作

更新於 September 30, 2026

從 AutoCAD 匯出的閥門圖塊 Excel 表格:MODEL 欄已填入 GV-025、BV-040 和 CV-050,旁邊是 TAG、SIZE 和 TYPE 屬性欄

屬性資料很少只留在圖面裡。它要匯出到試算表裡做審閱、做採購清單、填供應商的型號,改好的值還得回到圖塊裡。AutoCAD 能把資料匯出去:DATAEXTRACTION 產生表格,ATTOUT 寫出文字檔。麻煩的是回程。

DATAEXTRACTION 只能匯出,ATTOUT 和 ATTIN 透過文字檔來回轉換,一次也只能處理一張圖面。所以要往一套圖面裡幾十個閥門圖塊填型號,就得逐張開啟圖面重新輸入,或者寫一段 LISP 再把你的 DWG 交給它。

本指南用 BlockSync 完成整個往返:把所有圖塊的屬性匯出到同一個 Excel 活頁簿,用 Excel 的任何方法改值,再先預覽、先備份地寫回去。範例是六張管線圖面,共 28 個 VALVE 圖塊,每個都帶 TAG、SIZE、TYPE 和 MODEL 屬性。MODEL 還寫著 TBD,要依供應商清單來填,清單以閥門類型和口徑為鍵。Free 版每次執行最多處理 10 張圖面。

1. 把圖塊匯出到 Excel

開啟 BlockSync,用 Add Files… 或 Add Folder… 加入圖面。BlockSync 會掃描每個檔案,列出找到的每個圖塊定義,以及它被參照了多少次、出現在多少個檔案裡。這裡 VALVE 在 6 個檔案裡共有 28 個參照。

在 Blocks 索引標籤勾選這個圖塊,按 Extract to Excel。只有勾選的圖塊會被匯出,每個圖塊在畫面上顯示的輸出資料夾裡,帶有時間戳記的活頁簿中各佔一個分頁。

2. 看看匯出的內容

B_VALVE 分頁每個圖塊參照佔一列,涵蓋所有圖面。左邊是系統欄:檔名和物件控制代碼,BlockSync 就是靠它重新找到每個圖塊。右邊是每個屬性標籤各一欄,這裡是 MODEL、SIZE、TAG 和 TYPE。每個閥門的 MODEL 仍是 TBD,TAG 仍是 V-000。

屬性欄裡的值你可以改。但不能新增圖塊裡沒有的屬性,也不要動 _File 和 _Handle。

BlockSync 匯出的 B_VALVE 分頁:檔案、控制代碼、圖塊和圖層欄,然後是顯示 TBD 的 MODEL、SIZE、顯示 V-000 的 TAG 和 TYPE,每個閥門一列

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 改變它們的格式。

儲存活頁簿,盡量放在圖面所在的資料夾裡。

Excel 裡的 Vendor list 工作表:一欄 TYPE-SIZE,例如 GATE-DN25 和 BALL-DN40,一欄 MODEL,例如 GV-025 和 BV-040

4. 檢查填好的表

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

查表之後的同樣幾列閥門:閘閥的 MODEL 是 GV-025,球閥是 BV-040,止回閥是 CV-050,已標示,其他欄維持不變

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。