Skip to content

Passing More Parameters to Compiled VBA Code

By default, the helper function used to run compiled VBA code supports only one parameter.

Public Function CallXLSPadlockVBA(ID As String, Param1)
Dim XLSPadlock As Object
On Error Resume Next
Set XLSPadlock = Application.COMAddIns("GXLSForm.GXLSFormula").Object
CallXLSPadlockVBA = XLSPadlock.PLEvalVBA(ID, Param1)
End Function

The PLEvalVBA method of the XLSPadlock object takes two parameters: the ID of the compiled sub/function and a single parameter Param1.

To pass more parameters, the XLSPadlock object provides additional methods:

  • XLSPadlock.PLEvalVBA2(ID, Param1, Param2) for two parameters.
  • XLSPadlock.PLEvalVBA3(ID, Param1, Param2, Param3) for three parameters.

It is also possible to pass more parameters by using arrays.

For instance, a helper function to pass two parameters would look like this:

Public Function CallXLSPadlockVBA2(ID As String, Param1, Param2)
Dim XLSPadlock As Object
On Error Resume Next
Set XLSPadlock = Application.COMAddIns("GXLSForm.GXLSFormula").Object
CallXLSPadlockVBA2 = XLSPadlock.PLEvalVBA2(ID, Param1, Param2)
End Function