前回の続きです。
文字スタイル設定の、「サイズ:異尺度対応」 と、「効果:縦書き」を、
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をウォッチしてみました。
↓この中に、「サイズ:異尺度対応」 と、「効果:縦書き」のプロパティがあると思うんだけど・・・
↓TextStylesを開いても、やっぱ、、「サイズ:異尺度対応」 と、「効果:縦書き」はないですな。
で、全てのオブジェクトを開いてみても、該当するようなプロパティはない。
どーやるんだ??
なんて思いながら、寸法スタイルはプロパティ多いだろうなぁ~。と
次にやるであろう寸法スタイルのオブジェクトを見たら、Itemしかない!
プロパティがない!
えぇ~、寸法スタイルは設定できないのか??なんて思いながら
Help見たら、書いてあるじゃん。
「システム変数を使って・・・」って。
ってことはと思い、再度、TextStyleオブジェクトのHelpを見てみると、やっぱ、書いてある!
「文字スタイルの設定をコントロールするには、
下記のプロパティまたは文字スタイルのシステム変数を使用します。」と。
なるほど~。
じゃー、システム変数を使うにはどうやってやるのか?
適当にHelpを検索して見つけたのがコレ↓。
SetVariable メソッドを使えばいいようです。
設定が、SetVariable メソッドなら、
システム変数の取得は、GetVariableメソッドってことかな?。
おー、これでやれる。できるよ。
次回、実際に使ってみたいと思います。
AutoCAD VBAのHelp、なかなかいいです。
つーか、ちゃんとHelp読め!自分。