Home |
Search |
Today's Posts |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Yep. And if you want to return an object, you can use something like:
Option Explicit Function myFunct() As Range Set myFunct = ActiveSheet.Range("A1") End Function Sub testme() Dim myRng As Range Set myRng = myFunct() MsgBox myRng.Address(external:=True) End Sub deltaquattro wrote: You're right, Dave. I made a mistake when I tested the the function which passed boolean, because in testme I kept calling the function which passed myRetError as an Object. So it's not true that functions can return just a single variable: they can actually return any number of variables (I tried that also with doubles, longs, etc.). Good to know, Best Regards deltaquattro On 8 Feb, 15:47, Dave Peterson wrote: Yep, you could just pass a boolean so you could check that or you could check the err.number to see if it's different from 0. Just to show that it's ok to pass booleans: Option Explicit Function mySqrt(x As Double, WorkedOk As Boolean, _ myError As ErrObject) As Double Dim myVal As Variant On Error Resume Next myVal = Sqr(x) If Err.Number < 0 Then Set myError = Err mySqrt = -1 'anything you want WorkedOk = False Else mySqrt = myVal WorkedOk = True End If End Function Sub testme() Dim res As Double Dim myRetError As ErrObject Dim myRetOk As Boolean res = mySqrt(-1, myRetOk, myRetError) If myRetOk = False Then With myRetError MsgBox .Number & vbLf & .Description End With Else MsgBox res End If End Sub -- Dave Peterson |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Unknown error in function, and how to return value? | Excel Worksheet Functions | |||
Mode function - return default value rather than #N/A error if no | New Users to Excel | |||
Weibull function return an error | Excel Programming | |||
Error Return Value from and INDEX(A:2,MATCH()) function | Excel Worksheet Functions | |||
Excel return error code | Excel Programming |