前回の続きです。


文字スタイル設定の、「サイズ:異尺度対応」 と、「効果:縦書き」を、

VBAでは、どうやって設定するのか?


DXFファイル見れば分かるかも?なんて書いてしまいましたが、結局分かりませんした。


しょうがないので、AutoCADを起動しておいて、

ExcelのVBEから、AutoCADの状態をウォッチしてみることにしました。


ウォッチ用のソース。

━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─

Private Sub DXFTEST()
Dim AppObj As AcadApplication 'アプリケーションオブジェクト宣言

'実行中のAutoCADアプリケーションオブジェクトの取得
Set AppObj = GetObject(, "AutoCAD.Application.18") '

Set AppObj = Nothing 'オブジェクトの解放
End Sub

━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─

↑このソースで、 「Set AppObj = Nothing 'オブジェクトの解放」のところで

ブレイクして、AppObjをウォッチしてみました。


↓この中に、「サイズ:異尺度対応」 と、「効果:縦書き」のプロパティがあると思うんだけど・・・
CAD・CAD・Autocad-全オブジェクト


↓TextStylesを開いても、やっぱ、、「サイズ:異尺度対応」 と、「効果:縦書き」はないですな。
CAD・CAD・Autocad-TextStyles全て


で、全てのオブジェクトを開いてみても、該当するようなプロパティはない。


どーやるんだ??ガーン

なんて思いながら、寸法スタイルはプロパティ多いだろうなぁ~。と

次にやるであろう寸法スタイルのオブジェクトを見たら、Itemしかない!

プロパティがない!


えぇ~、寸法スタイルは設定できないのか??なんて思いながら

Help見たら、書いてあるじゃん。


「システム変数を使って・・・」って。汗




ってことはと思い、再度、TextStyleオブジェクトのHelpを見てみると、やっぱ、書いてある!



「文字スタイルの設定をコントロールするには、

下記のプロパティまたは文字スタイルのシステム変数を使用します。」と。あせる
CAD・CAD・Autocad-TextStyleオブジェクトHelp

なるほど~。

じゃー、システム変数を使うにはどうやってやるのか?


適当にHelpを検索して見つけたのがコレ↓。

↓寸法記入システム変数を定義する例です。
CAD・CAD・Autocad-例:システム変数定義方法

SetVariable メソッドを使えばいいようです。


設定が、SetVariable メソッドなら、

システム変数の取得は、GetVariableメソッドってことかな?。


↓実際、そうでした。
CAD・CAD・Autocad-システム変数取得方法

おー、これでやれる。できるよ。
次回、実際に使ってみたいと思います。

にほんブログ村 科学ブログ 技術・工学へ

AutoCAD VBAのHelp、なかなかいいです。

つーか、ちゃんとHelp読め!自分。