ArrIn isn't an array. It is a range.

In that situation you could do

Public Function Test(arr As Range) As Variant
Dim vArr as Variant
vArr = arr.Value
Test = vArr
End Function

Assuming you wanted to do something to the values of the cells in the range
before you passed back the answer.

--
Regards,
Tom Ogilvy


"thebaje" <[email protected]> wrote in message
news:[email protected]...
> Your code snippet works when the array is called within a Sub. I have seen
> and tried code snippets from other posts using the same approach you
> outlined,but have never been able to get it to work as a worksheet

function
> call. If the function is used in a cell on an Excel worksheet and the

array
> values are called from a range on a worksheet, the result is the #VALUE

error
> message
>
> For example, the values 1,2,3 are in Rows C3:C5 and named ArrIn. When
> =DoNothing(ArrIn) or DoNothing(ArrIn()) is entered in Cell D7 , the result

is
> always #VALUE! .
>
> Am I missing something?
>
> thebaje
>
> "Tom Ogilvy" wrote:
>
> > Sub Main()
> > Dim arr() As Integer
> > Dim v As Variant
> > ReDim arr(1 To 3)
> > For i = 1 To 3
> > arr(i) = i
> > Next
> > v = DoNothing(arr)
> > For i = LBound(v) To UBound(v)
> > Debug.Print i, v(i)
> > Next
> > End Sub
> >
> >
> > Function DoNothing(ByRef ArrIn() As Integer)
> > DoNothing = ArrIn
> > End Function
> >
> >
> > works for me.
> >
> > --
> > Regards,
> > Tom Ogilvy
> >
> >
> >
> > "TheVisionThing" <[email protected]> wrote in message
> > news:[email protected]...
> > > Am I correct in my assumption that I can only pass arrays in the form

of
> > > variants to a procedure as a parameter.
> > >
> > > For example, the following function always works for arrays
> > > Function DoNothing(ByRef ArrIn as variant)
> > > DoNothing = arrIn
> > > End Function
> > >
> > > While the following function never seems to work for arrays even if

they
> > are
> > > dimensioned as integer arrays.
> > > Function DoNothing(ByRef ArrIn as integer)
> > > DoNothing = arrIn
> > > End Function
> > >
> > > Regards,
> > > Wayne C.
> > >
> > >

> >
> >
> >