🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

Q&A

解決済

2回答

2358閲覧

AutocadとExcelを連携して作業するのに最適な開発環境と言語はなんでしょうか

liptoon

総合スコア7

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

1グッド

0クリップ

投稿2019/11/27 06:32

前提・実現したいこと

現在業務でVBAを用いてAutoCADでかいた図面情報をExcelに落とし込み、
さらにそこからExcel上でデータを加工、整理し表にするという作業を半自動で行っています。

先輩から引き継いだファイルに修正や機能の追加を繰り返し、コードも膨大な量になってきました。
プログラミングはやったことがなく、ネットで調べながらとりあえず完成させたようなものでここまできてしまい、問題なく動いているものの使用しなくなった変数がどこにあるかもわからず放置してしまっているなど無駄が多く、この際新しく勉強しなおして他の人が見ても保守しやすいようきれいに書き換えたいと思っています。

質問

・AutoCADとExcelを連携させることができて、引継ぎがしやすい開発環境と言語はなんでしょうか

VBA以外の言語を調べてみたのですがよくわからず困っています。
そもそもAutoCAD APIのうちExcelと連携できるのはどれなのかもわかりません。

以上、お手数ですがご教授いただけると嬉しいです。

退会済みユーザー👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

AutoCADのプログラミング言語と言えばビルトインされたAutoLISPやスクリプトファイル(*.scr)だと思っていましたが、今はVBAと連携したり様々な方法があるのですね。私自身はかなり昔のバージョンで少しオペレーションした経験があっただけで、昨今のAutoCAD事情や詳細な操作方法を把握しているわけではありませんが、

先輩から引き継いだファイルに修正や機能の追加を繰り返し、コードも膨大な量になってきました。

と言うところから、ひとつだけ確実に進言できることがあります。

今すぐに、VCS(Version Control System)を導入しましょう。具体的に言えば、Git です。

もしかしたらファイルのタイムスタンプや作成した日付、バージョン番号などを付与し、自分なりにバージョン管理を既に行っていて「そんな大げさなものは必要無い。」とお思いになるかもしれません。ですが、実はそれは逆です。GitのようなVCSでソースコードを管理していると、そのような方法がいかに頼りないものか分かります。ソースファイルと呼べる大量のファイルがあり、たびたび修正や機能追加があるのであれば、尚更です。「一人でやっているから必要無い」とも思いますか? それもまた逆です。一人で管理しているからこそ、ソースコードに間違いがあってはなりません。間違いの責任を取ることになるのは、全部、その一人になります。私なんぞは一人で作るときがあっても、最初にソースコードのリポジトリを作らないと、不安で作業を進められません。

質問者さんが質問中で本当に聞きたいことは「AutoCADとExcelを連携させることができて、引継ぎがしやすい開発環境と言語は何か」でしょうから直接的な回答ではありませんが、他の人との保守作業の段になってくるとやはり必要なことになりますので、視点を変えた回答として挙げてみた次第です。ご要望の回答は、他の回答者さんらから得られるかもしれませんので、引き続きお待ちください。

投稿2019/11/27 07:20

dodox86

総合スコア9256

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

liptoon

2019/11/27 08:00

ご回答ありがとうございます。 このような管理システムがあるのですね!思いもよりませんでした。 保守の方法についても悩んでいたのでたいへん有り難いです。 早速Gitを使ってみたいと思います。 ありがとうございました。
dodox86

2019/11/27 08:07

もともとご質問の内容が限定的(<AutoCAD + Excelでの開発環境と言う意味で)ですので、もし有効な回答が得られなかった場合は、質問を閉じた後、AutoCADのフォーラムのようなところで改めて質問された方が良いかもしれないかな、と回答した後に思ったりしました。 https://forums.autodesk.com/t5/ri-ben-yu/ct-p/511
dodox86

2019/11/27 08:12

尚、VCSやGitはソフトウェアプログラマー以外にはあまり馴染みがないツールですが、他の分野の方もファイル管理の為に使われた際、その有用性を認めた、とのような記事も何度か読みました。
liptoon

2019/11/28 05:44

確かにAutoCADのフォーラムだと回答がつきやすそうですね! どこに相談していいかも分からず右往左往しながらここにいきついたのですが、質問してよかったです! ご丁寧にありがとうございました。
guest

0

ベストアンサー

以下、Windows環境での一般論です。

  • VBA対応ソフトは、必ずActiveXのAPIが存在する

→liptoonさん環境のAutoCAD,Excel連携はActiveX APIで全て実行している

  • ActiveXは(ほぼ)どの言語でも連携可能
  • AutoCADのAPIは物によって機能の過不足がある

という事で、基本はAutoCAD APIの都合に合わせます。
例えば「AutoCADに新しい図形種別を追加する」案件であればObjectARX(VC++)一択になる等です。

今回はVBAで問題ないようなので、ActiveXが扱いやすい一般的な言語(VB.net、C#等)で良いと思われます。
また、.net系言語を選択しておくと、いざという時にAutoCAD.net APIも使えます。

投稿2019/11/28 02:16

FKD

総合スコア268

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

liptoon

2019/11/28 05:52 編集

ご回答ありがとうございます。 分かりやすい説明でたいへん助かりました。 少し調べてみたのですが、汎用性の高さからVisual StudioでC#を使うのが良いのかなとぼんやり考えています。 おかげさまで方向性が見えました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問