跳到主要內容
Hai 二次開發工作室

AutoCAD

AutoCAD 標題欄怎麼做?用屬性圖塊建立、填寫與更新

標題欄用一般文字寫,每張圖都要點開逐格修改,也沒辦法統一檢查或匯出。 把圖框做成含屬性的圖塊,插入時依序填寫、之後按兩下就能修改, 檔名與出圖日期還能自動帶入。以下是完整做法,AutoCAD 與 AutoCAD LT 都適用(只有把屬性整理成清單的工具不同,見下文)。

本文目錄(10 節)

先講結論:屬性圖塊怎麼做

  1. 在標題欄每一格用 ATTDEF 定義一個屬性,填好標籤(例如 DWG_NO)與提示
  2. 用 BLOCK 把圖框線條和所有屬性定義一起建立成圖塊
  3. 用 INSERT 插入圖框,在跳出的對話方塊依序填寫圖號、品名(沒跳出來,看 ATTREQ 與 ATTDIA)
  4. 之後按兩下圖框,用「增強型屬性編輯器」修改;改了圖框格式,用 ATTSYNC 同步到已插入的圖框

每一步的設定與可能遇到的問題,依序在下面說明。

標題欄為什麼要做成屬性圖塊

屬性是貼附在圖塊上的資料,AutoCAD 說明舉的例子就是零件號碼、價格、擁有者名稱這類資訊。 圖框做成含屬性的圖塊之後:

  • 插入圖框時,AutoCAD 會依序詢問圖號、品名等欄位,直接填寫
  • 按兩下圖框,就能在同一個對話方塊修改所有欄位,不必逐一點選文字
  • 屬性值可以整理成清單:完整版用資料萃取(DATAEXTRACTION);AutoCAD LT 沒有資料萃取, 可以用 ATTEXT(「屬性萃取」)輸出成檔案。也能由程式批次讀取與寫入

之後想依圖號命名 PDF、用 Excel 清單批次更新標題欄,前提都是標題欄是屬性圖塊。一般文字只能靠位置去猜,很難穩定處理。

先決定要哪些欄位

動手之前,先列出標題欄的欄位,並替每個欄位取一個標籤。 標籤是辨識屬性用的名稱,建議用固定的英文代號,全公司一致:

欄位標籤範例說明
圖號DWG_NO每張圖唯一;依圖號命名 PDF、對照 Excel 清單都靠它
品名TITLE零件或圖面名稱
材質MATERIAL
比例SCALE要和實際出圖比例一致
版次REV改版時要整批更新的欄位
日期DATE可以手填,或用功能變數帶入(見後文)
繪圖/審核DRAWN、CHECKED

標籤的規則:

  • 不能有空格,輸入的小寫字母會自動變成大寫
  • 同一個圖塊裡不要重複。重複的標籤在萃取資料時會出問題,增強型屬性編輯器也會以紅色標出
  • 標籤一旦被清單、其他圖面或程式使用,就不要隨意改名

用 ATTDEF 定義屬性

  1. 在圖框的標題欄位置,執行 ATTDEF(「常用」頁籤 →「圖塊」面板 →「定義屬性」),開啟「屬性定義」對話方塊
  2. 「屬性」區填寫:標籤(例如 DWG_NO)、提示(插入圖框時顯示的問句,例如「圖號」;沒填時直接用標籤當提示)、預設(沒輸入值時使用的內容,可以留白)
  3. 「文字設定」選擇文字型式、對正方式與文字高度
  4. 「插入點」勾選「在螢幕上指定」,按確定後點在標題欄對應的格子裡
  5. 重複以上步驟定義下一個欄位;勾選「在下方對齊前一個屬性定義」,會直接排在上一個屬性的下方

還沒建成圖塊之前,要改某個屬性的標籤、提示或預設值,直接按兩下那個屬性文字, 在「編輯屬性定義」對話方塊修改,不必刪掉重做。已經建成圖塊的,改用圖塊屬性管理員(見後文)。

「模式」區決定屬性的行為,標題欄會用到的設定:

模式作用標題欄的用法
不可見插入後不顯示、不出圖,資料仍存在圖檔裡只給清單或程式使用的資料,例如專案代碼
常數值固定,插入時不詢問公司名稱這類永遠不變的內容
確認插入時要求再確認一次輸入的值視需要
預置插入時直接使用預設值,不詢問只在屬性值改在指令提示下詢問(ATTDIA 為 0)時才有作用
鎖住位置屬性不能用掣點單獨移動建議勾選,避免文字被拖出格子
多行值可以包含多行文字較長的備註欄

單行屬性最多 255 個字元,一般欄位都夠用。

和圖框一起建立成圖塊

  1. 執行 BLOCK,在「圖塊定義」對話方塊輸入名稱,例如 TB-A3(紙張大小寫在名稱裡,之後好辨認)
  2. 基準點選圖框的一個角點,例如左下角,插入時比較好對齊
  3. 選取物件時,把圖框線條與所有屬性定義一起選進去

插入時詢問欄位的順序,取決於建立圖塊時選取屬性的順序; 如果用框選一次選取,詢問順序會和建立屬性的順序相反。 想調整順序,可以在圖塊屬性管理員(BATTMAN)裡上下移動。

不同紙張各做一個圖框圖塊,存成獨立的圖檔或放進公司的圖面樣板檔(.dwt),大家插入同一份。 各自畫的圖框,欄位名稱與位置遲早會不一致。

插入時填寫,之後怎麼修改

  • 插入:用 INSERT 插入圖框時,會跳出對話方塊,依序填入各欄位
  • 修改:按兩下圖框,開啟「增強型屬性編輯器」(EATTEDIT),可以修改每個屬性的值,也能調整文字選項與性質
  • 只改一格:按住 Ctrl 再按兩下該屬性,直接在圖面上編輯

插入時要不要詢問、用什麼方式詢問,由兩個系統變數決定:

ATTREQATTDIA插入圖框時
00 或 1不詢問,全部使用預設值
11用對話方塊填寫
10在指令提示下逐一詢問

兩個變數都存在系統登錄、不跟著圖檔,初始值都是 1。插入時沒有跳出對話方塊,先把兩個都設回 1; 換一台電腦要各自檢查。

用功能變數自動帶入檔名與日期

屬性的預設值可以放功能變數(Field):在「屬性定義」對話方塊的「預設」旁按「插入功能變數」, 選擇要顯示的資料。標題欄可以用的有:

功能變數名稱顯示內容注意
檔名目前圖檔的名稱檔案改名後,功能變數更新時會顯示新檔名
出圖日期出圖當下的日期印出來的圖面帶當天日期
儲存日期最後一次儲存的日期每次存檔都會改變,不適合當成繪圖或核准日期
日期目前的日期不會隨開檔、存檔自動更新,要用 UPDATEFIELD 更新
  • 功能變數預設在開啟、儲存、出圖、ETRANSMIT 與重生時更新,由系統變數 FIELDEVAL 控制(初始值 31)
  • 畫面上的功能變數有灰色底色,這個底色不會印出來
  • 沒有值的功能變數顯示「----」,無效的顯示「####」
  • 使用圖紙集管理員的團隊,也可以用圖紙集的功能變數帶入圖紙編號與標題

核准者、核准日期這類要負責任的欄位,建議手動填寫或由清單寫入,不要用會自己改變的日期。

改了標題欄格式:圖塊屬性管理員與 ATTSYNC

公司改用新的標題欄格式、或要多加一個欄位時:

  • 圖塊屬性管理員(BATTMAN)可以修改屬性的標籤、提示、預設值、模式、文字設定與圖層等性質, 也能調整詢問順序、移除屬性。變更要不要套用到目前圖面中已插入的圖框,由「設定」裡的「將變更套用到既有的參考」決定;按「同步」則會立即套用
  • 在圖塊編輯器(BEDIT)修改、或用 BLOCK 重新定義圖框之後,已插入的圖框不會自動長出新欄位, 要按圖塊屬性管理員的「同步」,或執行 ATTSYNC
  • ATTSYNC 會保留已經填好的屬性值,但會移除用 ATTEDIT、EATTEDIT 個別改過的格式或性質, 例如個別改過的文字高度、圖層或顏色

ATTSYNC 處理的是目前開啟的這張圖。上百張舊圖要換新格式、補新欄位,就得一張一張開檔執行。

屬性相關指令一覽

「做什麼」一欄是 AutoCAD 2025 繁中說明對各指令的描述。除了資料萃取,以下指令 AutoCAD LT 也有。

指令做什麼什麼時候用
ATTDEF建立用於儲存圖塊中資料的屬性定義建立標題欄、加新欄位
EATTEDIT編輯圖塊中每個屬性的值、文字選項以及性質插入後修改欄位(按兩下圖框)
ATTEDIT顯示「編輯屬性」對話方塊,編輯特定圖塊的屬性值只改值
ATTIPEDIT變更圖塊中屬性的文字內容只改某一格的文字
BATTMAN管理所選圖塊定義的屬性改標籤、提示、模式、詢問順序
BATTORDER指定圖塊屬性的順序,只能在圖塊編輯器中使用在 BEDIT 裡調整詢問順序
ATTSYNC將圖塊定義中的屬性變更套用至所有圖塊參考改了圖框格式之後
ATTDISP控制圖面中所有圖塊屬性的可見性取代屬性看不見,或想暫時顯示不可見屬性
ATTEXT將與圖塊關聯的屬性資料、資訊文字萃取至檔案匯出屬性清單(LT 也能用)
DATAEXTRACTION將物件性質、圖塊屬性以及圖面資訊匯出至資料萃取表或外部檔案做圖面清單、材料表(僅完整版)

圖面很多時

上面的做法適合新圖開始套用、或圖面不多的情況。圖面多時,會卡在這幾件事:

  • 舊圖的標題欄是一般文字,要一張張重建成屬性圖塊
  • 圖號、品名已經在 Excel 圖面清單裡,還要逐張再輸入一次
  • 改版時,整批圖的版次、日期要一起更新
  • 上百張舊圖要換成新格式的圖框

這類規則固定的工作,適合用 LISP 或外掛程式批次處理(完整版 AutoCAD 都能執行 LISP;LT 要 2024 以後的版本, 見AutoCAD LT 能用 LISP 嗎?)。 工具可以怎麼做,見AutoCAD 圖框自動插入・標題欄自動填寫; 圖框怎麼插入配置、設視埠比例、套用到多個配置,見AutoCAD 配置圖框設定與出圖比例, 屬性整理成清單見AutoCAD 表格怎麼轉 Excel?, 圖面上的項次、零件圈號要連續編號,見AutoCAD 怎麼自動編號?。

參考資料(Autodesk AutoCAD 2025 說明):關於定義和貼附圖塊屬性、ATTDEF (指令)、「屬性定義」對話方塊、建立和貼附屬性定義的步驟、在將屬性定義與圖塊關聯之前進行編輯的步驟、ATTREQ (系統變數)、ATTDIA (系統變數)、EATTEDIT (指令)、關於在文字中使用功能變數、「功能變數」對話方塊、BATTMAN (指令)、圖塊屬性管理員、ATTSYNC (指令)、ATTDISP (指令)、ATTEXT (指令)、DATAEXTRACTION (指令)、關於修改圖塊屬性中的資料、增強型屬性編輯器、ATTEDIT (指令)、ATTIPEDIT (指令)、BATTORDER (指令)、「圖塊屬性設定」對話方塊、ATTMODE (系統變數)、FIELDEVAL (系統變數)、清爽螢幕 (狀態列按鈕)。

常見問題

Q:ATTREQ 和 ATTDIA 差在哪?插入圖框時沒有跳出填寫屬性的對話方塊?

ATTREQ 決定插入圖塊時要不要詢問屬性值:0 是不詢問、全部使用預設值;1 是要詢問,再由 ATTDIA 決定怎麼問:1 用對話方塊,0 在指令提示下逐一詢問。所以要跳出對話方塊,兩個都要設為 1。這兩個設定存在系統登錄而不是圖檔,初始值都是 1,換一台電腦要各自檢查。

Q:改了圖框圖塊的欄位,已經插入的圖框沒有跟著變?

重新定義圖塊後,已插入的圖框要同步才會更新屬性:在圖塊屬性管理員按「同步」,或執行 ATTSYNC。已經填好的值會保留,但用 ATTEDIT、EATTEDIT 個別改過的格式會被還原。

Q:標題欄不見了?屬性文字看不見,或不可見屬性想暫時顯示出來?

用 ATTDISP 控制整張圖的屬性可見性:「一般」照每個屬性定義的設定顯示、「打開」讓所有屬性都顯示(不管原本的可見性設定)、「關閉」讓所有屬性都不顯示。設定存在系統變數 ATTMODE,跟著圖檔儲存。整張圖的屬性都不見時,先確認 ATTDISP 不是「關閉」。如果不見的是 AutoCAD 視窗上的功能區、工具列與選項板,可能是打開了「清爽螢幕」(CLEANSCREENON),輸入 CLEANSCREENOFF 或按 Ctrl+0 就會還原。

Q:標題欄的日期可以自動更新嗎?

可以在屬性的預設值插入功能變數,例如出圖日期或儲存日期。要注意儲存日期每次存檔都會改變,核准日期這類要固定下來的日期,建議手動填寫。

LINE諮詢開發需求