Unfortunately there's no such thing. Even the old VLisp help only showed how to translate from the VBA code to VLA.
Basically there are 3 ways from VL into ActiveX:
- Originally the vlax-invoke / vlax-get / vlax-put. These came from the original Vital Lisp extension to ACad r14.
- Similar are vlax-invoke-method / vlax-get-property / vlax-put-property. Though these do not do automatic conversions between lisp/ActiveX data types.
- Then most methods / properties also get "shortcut" functions. E.g. (vlax-invoke <object> 'Item <index>) could be re-written as (vla-Item <object> <index>)
The main principle of ActiveX is that it's object oriented. So for anything you want it to do (method), or value you want to obtain (property get) or value you want to set (property set) you first need its owner object. In VBA it would be the usual OOP syntax with dot-notation:
ObjectReference.MethodName(Arg1, Arg2, ... ArgN) 'For calling a method
variable = ObjectReference.MethodName(Arg1, Arg2, ... ArgN) 'For calling a method and setting its result into a variable
variable = ObjectReference.PropertyName 'For setting the value of a property into a variable
ObjectReference.PropertyName = variable 'For setting the value in a variable into the property
The same code can be written in these 3 ways in VLisp
;; Using the old Vital Lisp functions
(vlax-invoke ObjectReference 'MethodName Arg1 Arg2 ... ArgN
) ;For calling a method (setq variable
(vlax-invoke ObjectReference 'MethodName Arg1 Arg2 ... ArgN
) ;For calling a method and setting its result into a variable (setq variable
(vlax-get ObjectReference 'PropertyName
)) ;For setting the value of a property into a variable (vlax-put ObjectReference 'PropertyName variable
) ;For setting the value in a variable into the property
;; Using the new Visual Lisp functions
(setq variable
(vlax-invoke-method ObjectReference 'MethodName Arg1 Arg2 ... ArgN
) ;For calling a method and setting its result into a variable (setq variable
(vlax-get-property ObjectReference 'PropertyName
)) ;For setting the value of a property into a variable (vlax-put-property ObjectReference 'PropertyName variable
) ;For setting the value in a variable into the property
;; Using the shortcut Visual Lisp functions (if they exist)
(vla-MethodName ObjectReference Arg1 Arg2 ... ArgN) ;For calling a method
(setq variable
(vla
-MethodName ObjectReference Arg1 Arg2 ... ArgN
) ;For calling a method and setting its result into a variable (setq variable
(vla
-get
-PropertyName ObjectReference
)) ;For setting the value of a property into a variable (vla-put-PropertyName ObjectReference variable) ;For setting the value in a variable into the property
So you see all except for the shortcuts are directly translatable from the VBA code. You add the vlax-[invoke/get/set][-method/property] function before, then remove the VBA parentheses, commas & dots, wrapping the whole in lisp parentheses and quoting the Method/Property name.
In the shortcut the Method/Property name moves into the function name itself.
Edit: renamed the set to put ... sorry about that.