まずはVBA比較
その1「拡張子」
No.|項目|Excel|Word|PowerPoint|Access|Outlook|AutoCAD
:-:|---|:-:|:-:|:-:|:-:|:-:|:-:|:-:
1|Image
Color|緑🟩|青🟦|橙🟧|赤🟥|水色|赤黒?
2|通常|.xlsx|.docx|.pptx|.accdb|.OTM|?
3|マクロ|.xlsm|.docm|.pptm|同上|.OTM|.dvb
4|アドイン|.xlam|無|.ppam|.accda|.OTM|?
5|マクロ有効
テンプレート|.xltm|.dotm|.potm|.accdt|?|?
※Office2010時点
※Wordのアドイン(?)方法はNo.5のテンプレートを使用。
※Accessの「実行のみ」の拡張子は「.accde」
※Outlookは、「VbaProject.OTM」のファイルデータで統一している。VbaProjectは変更可能。
その2「This系とActive系の比較」
No.|項目|Excel|Word|PowerPoint|Access|Outlook|AutoCAD
:-:|---|:-:|:-:|:-:|:-:|:-:|:-:|:-:
1|This系|ThisWorkbook|ThisDocument|ThisPresentation|?|?|Thisdrawing
2|Active系|ActiveWorkbook
ActiveSheet|Activedocument|ActiveWindow
ActivePresentation|Screen.ActiveControl|ActiveInspector
ActiveExplorer
ActiveInlineResponse
ActiveInlineResponseWordEditor|
その3「選択文章をメッセージボックスで表示」の例文
Excel
Sub selectionTest()
MsgBox Selection
End Sub
word
Sub selectionTest()
MsgBox Selection
End Sub
PowerPint
Sub selectionTest()
MsgBox ActiveWindow.Selection.TextRange
End Sub
Access
Sub selectionTest()
MsgBox Screen.ActiveControl
End Sub
Outlook その1
メールエディタを起動してない場合(編集中ではない)
Sub selectionTest()
MsgBox ActiveExplorer.Selection(1).GetInspector.WordEditor.Application.Selection
End Sub
Outlook その2
メールエディタを起動中の場合(編集中)
Sub selectionTest()
MsgBox ActiveInspector.WordEditor.Application.Selection
End Sub
AutoCAD
Sub selectionset()
Dim sset As Acadselectionset
Dim objEntity As AcadObject
Set sset = Thisdrawing.SelectionSets.Add("NewSS")
Call sset.SelectOnScreen
For Each objEntity In sset
MsgBox objEntity.textString
Next
sset.Delete
End Sub
注)AutoCADのVBAにはSelection
が無いです。SelectionSetS
とSelectOnScreen
を合わせて同様な機能が可能なようです。
参考にしているVBA書籍(2017年4月時点)
- Word向け
→★最速攻略 Word マクロ / VBA徹底入門 土屋 和
→★作って簡単・超便利! Wordのマクロ実践サンプル集 西上原 裕明
→★Wordによる編集レイアウトの基本とDTP実践テクニック 西上原 裕明 - AutoCAD向け
→★AutoCAD 2000 VBA入門 (CAD press) 大浦誠著:図書館で借りました。
→★「AutoCAD Platform Customization: VBA」:Amazonで買った洋書です。約3000円
→★「AutoCAD VBA二次开发教程」:ネット検索で引っかかる中国語の本です。結構役立ちます。
マイナー向けVBAの情報収集方法
- PowerPointとOutLookとAutoCADのVBA書籍が日本に皆無。時間のある時に本から情報を得たい性格なので辛い。
- Access向けVBA書籍はありますが、現状は仕事で使わないので興味なし。
- ネット検索すれば、ちらほら情報がありますが、特に「AutoCAD VBA」はやや難解で、勉強に一苦労。痒いところに手が届かず、かつ最終更新が10~20年前で絶滅危惧種。明日には無くなるのでは!?と要らぬ心配をして、心穏やかに安心して見ていられない。一方で、AutoCADは、AutoLISP関連の解説本が、根強く発売している。謎だ。他のAutoCADのプログラム本といえば、VB.NET(最速攻略AutoCAD VB.NETマクロサンプル大全集、落合重紀)があります。時代はやっぱり.NETみたい。
- Amazon.co.jpや、Amazon.comで中華書籍や洋書が存在します。また、内容は中国語や英語ですが、ネット上で中を読むことが出来ます。2016年にも最新図書が発売されている様子
- 和書のAutoCAD・VBA本は「AutoCAD 2000 VBA入門 (CAD press) 大浦誠著」が唯一ですが、発売日が西暦2000年です。古すぎます。東京、千葉、兵庫の大店舗の古本屋も数店行きましたが見つかりませんでした。Amazonで中古本もありますが20000円と高すぎ。