ブロックの属性情報を書き出し、Excelなどで編集したい。

Q.


ブロックの属性を付加し、作図時には、属性に部品情報などを入力しています。
作成した図面から、ブロックの属性値だけを抜き出して、Excelなどで集計したいのですが、
ブロックの属性値のみ外部ファイルに書き出す方法はないですか?


A.

ブロックの属性情報をテキストファイルで書き出す機能として
ATTEXT (属性書き出し)コマンドがあります。

ATTEXTコマンドはあらかじめ出力したい属性名などをテンプレートファイルに定義しておき、
そのテンプレートで定義した属性情報のみを書き出す機能になります。

ATTEXTコマンドの出力フォーマットには
  • DXF形式
  • CDF形式 (カンマ区切り)
  • SDF形式 (固定長)
の3種類があり、Excel で集計する場合は、CDF形式となります。
CDF形式は、各情報をカンマで区切り、文字列の引用符をシングルコードで出力します。

あらかじめ用意するテンプレートファイルはテキストファイルで準備します。
1項目1行で記述し、属性名やデータフォーマット、出力文字数を指定します。
例えば、

 属性名 NAME
 フォーマット 文字列
 文字数 

としたとき、テンプレートファイルには

NAME    C020000

また、属性情報だけでなく、ブロック名や配置位置なども出力することができます。
以下は、ブロック名、配置位置、属性[NAME,SPEC,TYPE]を出力する場合の
テンプレートの例になります。

テンプレートファイル

BL:NAME C002000
BL:X    N007002
BL:Y    N007002
NAME    C020000
SPEC    C020000
TYPE    C020000


ATTEXTコマンドは、出力するオブジェクト、テンプレートファイルおよび出力ファイルを指定し、
属性情報を書き出しますが、出力するオブジェクトの対象の属性を含んでいない場合は、
そのオブジェクトの情報は出力されません。