この記事の難易度
AutoCAD LTを使っていて図面から部品や材料を手作業で数量を数えたことはありませんか?
そんなときに自動で集計できればなぁと思うときってありますよね?
図面から材料集計が自動でできれば作業工数が減って業務効率化ができます。
図面情報を集計するために、前回の記事で属性情報を抽出してテキストファイルに書き出す方法を説明しました↓
前回の記事をご覧になっていない方は以下を参照してください。
今回は得られたテキストファイルを使ってExcelから「ボルトサイズ」「ボルト長さ」ごとの数量積算をして材料表を作ります↓
もくじ 非表示
属性情報をピボットテーブルで集計
前回の記事で属性情報がテキストファイルで出力されました。
このデータをExcelで読み込んでピボットテーブルで数量を積算していきます。
属性書き出しで得られた結果はテキストファイルですが、Excelで開けます。
まずは、Excelを立ち上げましょう↓
Excelを立ち上げたら「開く」を選択して、ファイル選択画面が開きます。
ファイル名欄ヨコで拡張子を選択できますが、「すべてのファイル」とします。
するとすべての拡張子が選択できるようになります。
書き出したテキストファイルを選択しましょう。
するとテキストファイルウィザード画面が開きました↓
「データのファイル形式を選択」項目で「コンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」を選択し、次へをクリックしましょう。
区切り文字を「コンマ」にチェックをします。
文字の引用符では「’(シングルクォーテーション)」を選択します。
データのプレビュー欄を確認すると区切り線が引かれて、データが分割されます。
設定が終わったら「完了」をクリックしましょう。
完了をクリックしたらデータが区切られて入力されてますね↓
ところが出力されたデータには列名が入っていません。
なので、別途列名を入力してあげなければいけません。
今回はA列を「ボルトサイズ」、B列を「ボルト長さ」としました。
先程のデータからダイナミックブロックの一つ一つの属性情報を各セルへ入れました。
ここでは、各サイズ、長さごとの数量をピボットテーブルで積算します。
値が入力されているセルをクリックした状態でリボンから、挿入>ピボットテーブルを選択します。
するとピボットテーブルの範囲を指定する画面が立ち上がりました。
自動で認識されているのでそのままOKをクリックします。
ピボットテーブルのフィールド画面が立ち上がりました↓
「ボルトサイズ」を行へ、「ボルト長さ」を列へドラッグ&ドロップします。
すると行ラベルに「ボルトサイズ」が、列ラベルに「ボルト長さ」のデータが入りました。
次にデータの個数を出します。
「値」の欄に「ボルトサイズ」をドラッグ&ドロップします。
これでボルトサイズ、長さごとの材料表が完成です。出力結果を見てみましょう。
出力結果からボルトサイズ、長さごとの数量が積算されています↓
ボルト長さ15mmのM5ボルトが8本必要ということがこの表を見ればすぐにわかります。
また、各ボルト長さ、ボルトサイズごとの総計も自動で算出できています。
自動で数量が計算できるから楽ですよ!
ピボットテーブルの「値」欄の設定によって数量が出てこないことがあります。
そのときの対処法を説明します。
ピボットテーブルの「値」欄にボルト長さに変更すると「合計/ボルト長さ」が設定されました。
ピボットテーブルの中身を見ると各ボルトの長さを積算した値が出てきました↓
これは「ボルト長さ」が数値データなのでExcel側がボルト長さを足し合わせよう!と判断したことが原因です。。。
足し算の対象が間違ってしまったエラーを解消しましょう!
「値」欄の▼マークをクリックして「値フィールドの設定」を選択します。
値フィールドの集計で「合計」が選択されていたので「個数」に変更します。
するとボルト数量の結果が出ました。大成功!
まとめ
今回はAutoCAD LTユーザー向けに「属性書き出し ピボットテーブルで集計する」を説明しました。
また「ボルトのサイズ、長さごとの数量を積算する」成果物を作りました。
- テキストファイルはExcelで開ける
- ピボットテーブルを使えば数量積算を自動化できる
- AutoCAD LT × Excelで材料積算ができる
前回の記事で説明をした「属性書き出し」で属性情報を抽出したテキストファイルが作られました。
このファイルはExcelから直接開くことができます。
AutoCAD LTでテキストファイルに出力してピボットテーブルを使うと材料積算ができました。
ボルトや部品などダイナミックブロックに属性が入れられれば、業務効率が上がります。
属性を持ったダイナミックブロックを使って今回説明した内容を参考に材料積算に挑戦しましょう!
以上、こたろーでした。