LISP自訂函數呼叫VBA巨集

身為一名工程人員,繪圖時能夠精簡步驟,節省時間是最好不過的事情。

即便已經會使用VBA,但操作的過程還是需要點選"執行VBA巨集"→選擇要執行的VBA
當很多的SUB一一被寫出來,要從一整排的VBA找到正確功能的去點擊,也是很不容易的事情(當VBA執行視窗無法完整顯示巨集名稱的時候)。



此時,如果VBA的執行能夠像是從一般介面去點擊或者是指令操作,那就太完美了!

為達成上述功能有以下方式可供嘗試:

1. 使用者介面(CUI)新增自訂方法編寫CAD巨集語言指定VBA。

2. VBA操作menu物件去指定VBA。

3. 透過LISP語言去新增自訂函數

其中,最為方便的乃為LISP,日後只需要設定指令即可達成VBA的效果,相關步驟如下:

1.開啟筆記本(notepad),將以下代碼貼上後,存檔並將副檔名更改為.lsp。

 (defun c:bk() ;自訂函數名稱
    (vl-load-com)
    (setvar "cmdecho" 0)
    (command "-vbarun" )
    (command "BreakLine" ) ;要執行的sub名稱
    (setvar "cmdecho" 1)
)

P.S:更改副檔名的方式,先至資料夾選項中,將隱藏副檔名取消勾選即可更改。

2.開啟CAD後,點擊"載入應用程式"→選取已編寫完成的.dvb檔案。

3.點擊"載入應用程式"→載入此lsp檔案。

4.如果需要常駐也可以加入至啟用套件,就省得每次重開圖面就要再執行一次了。

之後在圖面上只要打入 bk 就會自動執行Sub BreakLine() ....End Sub 該程序的內容了!!!!








留言

Popular Posts

Excel VBA @ 監造日報表、查驗表 -2

ExcelVBA@施工照片整理的應用範例

Excel VBA@ 監造日報表、查驗表