Vla-runmacro

提供:GizmoLabs - だいたい CAD LISP なサイト
構文
(vla-runmacro vla-object name)


機能
指定した VBA プロジェクト ファイルのマクロを実行する。


引数
  • vla-object … Application の VLAオブジェクト
  • name … 実行するマクロの呼び出しシーケンスを示す文字列。呼び出しシーケンスには次の構文がなければならない。ここで、[] はオプションのパラメータであることを示している。
[Filename.dvb.][ProjectName.][ModuleName.]MacroName
  • 注 : Filename.dvb の後ろに ProjectName が続く場合は、次の例のように、名前をピリオドではなく感嘆符によって区切る。
Filename.dvb!ProjectName

指定された Filename.dvb は、ロード済みでない場合にロードされる。Filename.dvb へのパスが指定されていない場合、CAD の検索パスを調べてファイルを見つける。ProjectName が指定されていない場合は、現在ロードされているすべてプロジェクトを検索して、マクロを見つける。


戻り値
なし


サンプル
(vl-load-com)
(defun c:Example_LoadDVB()
    ;; DVB ファイルを読み込んで RunMacro メソッドで実行するサンプル
    ;;
    ;; Module1.Drawline というマクロが書かれている drawline.dvb 
    ;; というファイルを使うので準備しておくこと

    (setq FileName (findfile ".\\Sample\\vlisp\\drawline.dvb"))
    
    ;; DVB ファイルをロード
    (vla-LoadDVB acadObj FileName)
    
    ;; マクロを実行
    (vla-RunMacro acadObj "Module1.Drawline")
    
    ;;  DVB をアンロード
    (vla-UnloadDVB acadObj FileName)
    
    (alert "The DVB file has been run!")
)


関連事項