手動での作業量が膨大になりがちなAutoCADについて、自動化に取り組みたい(手離れしたい)と考えていないでしょうか。特に、図面修正や属性変更などのルーティンワークに時間を奪われている方も多いはずです。
そこでこの記事では、AutoCADを自動化する方法についてわかりやすくまとめました。
アクションマクロやスクリプト、AutoLISP、VBAなどを用いた自動化の方法や使い方も解説しているので、業務負担を減らして作業効率化を実現する参考にしてみてください。
AutoCADの自動化でできること

AutoCADは「プログラム(プログラミング言語)や記録機能を用いる」ことで、自動化を実現できます。参考として以下に、AutoCADでできる自動化のイメージをまとめました。
| 自動化できること | 効果 | 自動化する手段 |
|---|---|---|
| 一定の流れ(設定など)を自動化する | 何度も発生する設定作業を省略できる | アクションマクロ |
| 寸法・注釈の一括追加する | 手入力のミスを削減できる | AutoLISPなど |
| Excelデータから図形を生成する | 数量表や部品表を自動反映する | VBA・スクリプトなど |
| レイヤー設定・画層切替を自動化する | 管理ルールを統一する | AutoLISP・スクリプトなど |
たとえば、建築設計でたびたび登場する「通り芯や柱の配置」を自動化できるのはもちろん、設備設計における配管系統図の部材番号を自動で付与するといった使い方も可能です。このように、何度も発生する手作業を効率化でき、Excelといった外部ツールとの連携にも対応します。
AutoCADの操作に不満やストレスを感じている方は、導入できる方法があるかチェックしてみてください。
なお、独学だけでは自動化について理解できないという方は、プロから使い方の基礎・応用を学べるセミナー講習に参加するのがおすすめです。以下のセミナーでは、AutoCADを自動化する仕組みや実践的な使い方を体系的に学習できます。
セミナー名 AutoCAD自動化セミナー 運営元 GETT Proskill(ゲット プロスキル) 価格(税込) 27,500円〜 開催期間 2日間 受講形式 対面(東京・名古屋・大阪)・ライブウェビナー・eラーニング
AutoCADを自動化する5つの方法と使い方
AutoCADの自動化は、大きく分けて5つの方法があります。
| 自動化手法 | 特徴 | 難易度 |
|---|---|---|
| アクションマクロ | 操作を記録して自動再生できる | ★☆☆ |
| スクリプト(.scr) | コマンドをまとめて実行できる | ★★☆ |
| AutoLISP | AutoCAD専用言語で高度な自動化ができる | ★★★ |
| VBA | 外部言語での制御、自動連携ができる | ★★★ |
| その他自動化手法 | RPAや生成AI、外部APIなどを用いて自動化する | ★★★ |
目的やレベルに応じて、「記録型」から「プログラミング型」まで段階的に選べるのが特徴です。ここからは、各手法の使い方を順に紹介します。
アクションマクロによる自動化(プログラミング言語不要)

アクションマクロは、AutoCADの操作をそのまま記録して再生できる機能です。
「管理>アクション レコーダ」という項目に格納してあり、次のような一連の動きを記録することで、次回以降はワンクリックで実行できます。
- 図面テンプレートを開く
- レイヤーを切り替える
- 線を引く
使い方は簡単で、「記録ボタン」を押した瞬間から動作の記録が始まります。
一連の流れを操作し終えたら、同じ場所に表示される「停止ボタン」をクリックすることで、記録が完了します。

なお、操作手順を間違えた場合には、記録のやり直しが必要です。
記録したデータはAutoCAD上で実行・管理できます。
スクリプト(.scr)を使ったコマンド処理の自動化

AutoCADに搭載されているスクリプトは、コマンドをテキストファイル(.scr)にまとめて記述することで、すべての動作を一度に実行する仕組みです。以下に、「新規レイヤーを作成する」というスクリプトの記述例を用意しました。
このデータをテキストファイルに書き、.scrという拡張子で保存すれば、AutoCADで読み込んで自動化できるようになります。

なお、スクリプトは単純な順次処理向けで、条件分岐や入力を伴う処理には向いていません。
複雑な処理を行いたい場合は、次の「AutoLISP」がおすすめです。
AutoLISPによる高度な自動化

AutoLISPは、AutoCAD専用のプログラミング言語であり、図面データに直接アクセスして「設計ルールの自動化」「オリジナルコマンドの作成」などを実施できます。以下に、「座標0,500の位置に半径100mmの円の追加」を実行できるコードを準備しました。
(setq center (list 0 500))
(setq radius 100)
AutoCADに標準搭載されているVisual LISPエディタで作成・実行すると、次のように画面上に円が追加されました。

AutoCADの機能を網羅的に組み合わせられるため、前述したスクリプトよりも痒い所に手が届く自動化の方法だと言えます。
また、AutoLISPの使い方やサンプルコードをチェックしたい方は、以下の記事がおすすめです。
AutoLISPのコマンド一覧
以下に、AutoLISPで頻出するコマンドを一覧にまとめました。
| コマンド | 内容 | 用途 |
|---|---|---|
| command | AutoCADコマンドを実行する | 作図や編集処理 |
| getpoint | 座標入力を取得する | 条件付きの情報取得 |
| setq | 変数を設定する | 条件分岐 |
| if | 条件を設定する | ルール化 |
| foreach | 繰り返し処理を行う | 一括編集 |
自動化のベースとなるコマンドです。各用途を覚えておきましょう。
マクロを用いたVBAによる自動化とExcel連携

AutoCADでは、VBAを使って自動化ができるほか、Excelなどの外部制御も可能です。
以下に「ポリラインを引く」という自動化のサンプルコードをまとめました。
Sub DrawPolyline()
Dim plineObj As AcadLWPolyline
Dim points(0 To 3) As Double
‘ 始点 (0,0) → 終点 (100,100)
points(0) = 0: points(1) = 0
points(2) = 100: points(3) = 100
Set plineObj = ThisDrawing.ModelSpace.AddLightWeightPolyline(points)
End Sub
上記をVBAに入力して実行すると、次のように、1本のポリラインが挿入されました。

また、VBAではAutoCADの操作だけでなく、Excelと連携して表情報を図面上に反映するといった作業にも対応可能です。数量計算表や部品表などを作成する際の自動化に役立ちます。
マクロのコマンド一覧
以下に、VBAで扱うマクロの頻出コマンドを一覧にまとめました。
| コマンド | 内容 |
|---|---|
| ThisDrawing.SendCommand | AutoCADのコマンドを実行する |
| SelectionSet | 図形を選択・セットする |
| AttributeReference | 属性値を変更する |
| Excel.Application | Excelと連携する |
AutoCADの機能を使いたい場合はThisDrawing.SendCommand、Excel活用を考えている方はExcel.Applicationをよく利用します。
また、VBAの使い方を学びたい方は、以下の記事がおすすめです。
その他の自動化方法
AutoCADでは、他にも次の方法で自動化に対応できます。
- 外部APIを導入する
- 自身でAPIをプログラミングする
- RPAの自動化に組み込む
- 生成AIで自動化の仕組みをつくる
たとえば、準備不要で自動化をしたい場合はAutoCADの「アドイン>App manager」からAPIを導入するのが便利です。また、独自の機能をつくりたい場合には自身でプログラムを組むのもひとつの方法です。近年では生成AIでプログラムを組む方法も登場しています。
AutoCAD自動化の注意点とトラブル対処法
AutoCADを自動化すれば作業の時短効果を得られますが、導入時にはエラーや互換性トラブルが発生することもあります。特に、スクリプト・AutoLISP・VBAなどのコードを扱う場合には、わずかな記述ミスや環境の違いが原因で動作しないケースも少なくありません。
ここでは、現場でよく起きるトラブルとその対処法を紹介します。
自動化の作業中にエラー・バグが起きる可能性がある
AutoCADの自動化では、「コマンドが正しく認識されない」「スクリプトが途中で止まる」といった不具合が起きることがあります。原因は次の通りです。
- スクリプト内のスペースや改行を間違っている
- AutoLISPの関数名を間違っている
- 参照ファイル(ブロック・テンプレート)が存在しない
特に、AutoLISPやマクロを複数人で共有する場合には、環境の違いによって思わぬエラーが出やすくなります。トラブルを防止するためにも、社内で共通の作成ルールを設定するほか、実行時にはログを出力して、実行履歴を可視化しておくのが良いでしょう。
バージョン互換性によって環境依存エラーが起きる場合がある
AutoCADは毎年新バージョンがリリースされるため、スクリプトやAutoLISP、マクロの環境が古い場合には、うまく動作しないことがあります。特に以下は、バージョン依存によるエラーの原因になります。
- AutoLISP関数の仕様が変更された
- VBAライブラリの参照が切れている
- APIや.NET Frameworkが更新されている
- WindowsOSやExcelのバージョンが違う
互換性によるエラーを回避するためにも、定期的に公式サイトでの互換性チェックを行うほか、AutoLISPやマクロについては、テキスト化してGitHubなどでバージョン管理を行うのが理想的です。
AutoCADの自動化を学ぶ方法(独学・動画・セミナー)

AutoCADの自動化について1から学びたい方は、自分の「目的」「スキルレベル」に合う学び方を選ぶことが重要です。
たとえば、マクロ操作やスクリプト程度であれば独学でも習得可能ですが、AutoLISPやVBAなどを使いこなすためには体系的なトレーニングが必要になります。参考として以下に、おすすめの学習方法をまとめました。
- AutoCADのリファレンスで基本構造を学ぶ
- 書籍や学習本で基礎から学ぶ
- 動画コンテンツでわからないポイントを学ぶ
なお、AutoCADの基本的な操作や使い方から学習したい方は、使い方の基礎・応用を学べるセミナー講習に参加するのがおすすめです。以下のセミナーでは、AutoCADの基礎~応用、実践活用を体系的に学習できます。
| セミナー名 | AutoCAD基礎セミナー講習 |
|---|---|
| 運営元 | GETT Proskill(ゲット プロスキル) |
| 価格(税込) | 27,500円〜 |
| 開催期間 | 2日間 |
| 受講形式 | 対面(東京・名古屋・大阪)・ライブウェビナー・eラーニング |
AutoCADの自動化についてよくある質問
AutoCADの自動化についてよくある質問をまとめました。
AutoCADの自動化についてまとめ
AutoCADの自動化は、設計・製図作業の生産性を向上する初~中級者向けの手段です。
特にアクションマクロやスクリプトは初心者からでも着手しやすく、AutoLISP、VBAなどに関しても、AutoCADの基礎を押さえている方なら、すぐに覚えられます。
また、自動化を導入する際には「どこまで自動化したいのか」「どんな環境で使うのか」を明確にすることが大切です。自動化の方法にも相性があるため、本記事を参考に、どの方法で自動化すべきなのかを検討してみてください。