Thursday, January 31, 2019

VBA - Sub Procedure

VBA - Sub Procedure


Sub Procedures are similar to functions, however there are a few differences.
  • Sub procedures DO NOT Return a value while functions may or may not return a value.
  • Sub procedures CAN be called without a call keyword.
  • Sub procedures are always enclosed within Sub and End Sub statements.

Example

Sub Area(x As Double, y As Double)
   MsgBox x * y
End Sub

Calling Procedures

To invoke a Procedure somewhere in the script, you can make a call from a function. We will not be able to use the same way as that of a function as sub procedure WILL NOT return a value.
Function findArea(Length As Double, Width As Variant)
   area Length, Width    ' To Calculate Area 'area' sub proc is called
End Function
Now you will be able to call the function only but not the sub procedure as shown in the following screenshot.

The area is calculated and shown only in the Message box.

The result cell displays ZERO as the area value is NOT returned from the function. In short, you cannot make a direct call to a sub procedure from the excel worksheet.

No comments:

Post a Comment

No String Argument Constructor/Factory Method to Deserialize From String Value

  In this short article, we will cover in-depth the   JsonMappingException: no String-argument constructor/factory method to deserialize fro...