Optional Arguements for Functions

  • Thread starter Thread starter ExcelMonkey
  • Start date Start date
E

ExcelMonkey

I want to build a function which takes two optional arguements. If Y
and Z are note provided, I would like to make them equal to 1. How do
I state this within the function? They way I have it below will force
them to 1 regardless.

Private Function New(X As Double, Option Y As Double, Optional Z As
Double)

'if Y and Z are not provided then force them to value of 1
Y = 1.0
Z = 1.0

New = X*Y*Z
 
Private Function New(X As Double, Option Y As Double = 1, _
Optional Z As Double = 1)

New = X*Y*Z

End Function
 
I want to build a function which takes two optional arguements. If Y
and Z are note provided, I would like to make them equal to 1. How do
I state this within the function? They way I have it below will force
them to 1 regardless.

Private Function New(X As Double, Option Y As Double, Optional Z As
Double)

'if Y and Z are not provided then force them to value of 1
Y = 1.0
Z = 1.0

New = X*Y*Z


Try:

Function Nw(X As Double, Optional Y As Double = 1, Optional Z As Double = 1)

Nw = X * Y * Z

End Function

--ron
 
Just to add.
Optional arguments are only valid at the end. In other words, you can't have
mandatory arguments following optional ones.


--
Rob van Gelder - http://www.vangelder.co.nz/excel


Tom Ogilvy said:
Private Function New(X As Double, Option Y As Double = 1, _
Optional Z As Double = 1)

New = X*Y*Z

End Function
 
Back
Top