Specify a target range in Function arguements

M

monkeyquant

I would like to specify a target range in a vba function for excel and
redirect the results to the target range specified at the begining
instead of using the function name, but keep givning me error, but was
okay in Sub routine.

It goes like this...

Function Alpha(yTarget As Range, Other input arguments)

''' Resize yTarget based on the results to spit out and use For loop

yTarget.Resize(m, n).name = "yTarget"

For i = 1 To m
For j = 1 to n
yTarget.Cells(i, j) = results(i, j)
Next j
Next i

I will appreciate if you can help me on this...
 
B

Bernie Deitrick

User-Defined-Functions can only change the value of the cells that call them, so you'll need to keep
it a macro.

HTH,
Bernie
MS Excel MVP
 
G

Guest

Your function should be declared as to what object is returned and that
object assigned to the name of the function.

For example:

Function Alpha(yTarget As Range, Other input arguments) As Range
....
....
Set Alpha = ytarget
End Function

Function Alpha(yTarget As Range, Other input arguments)
''' Resize yTarget based on the results to spit out and use For loop

yTarget.Resize(m, n).name = "yTarget"

For i = 1 To m
For j = 1 to n
yTarget.Cells(i, j) = results(i, j)
Next j
Next i
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top