How to get address of cell calling UDF?

J

JoeU2004

I'm drawing a blank....

Within a UDF, how can I get the address of the cell calling the UDF?

(Without passing ADDRESS(ROW(A1),COLUMN(A1)), if A1 is the calling cell.)

ActiveCell.Adress does not work. Activecell is the selected cell or the
first cell in a selected range at the time that the UDF is called.

I want what I would call ThisCell.Address.

For example, suppose I have the following UDF:

Function myudf()
Msgbox ThisCell.Address 'replace ThisCell
End Function

And I call it as follows from 3 cells:

A1: =RAND() + myudf()
A2: =RAND() + myudf()
A3: =RAND() + myudf()

If B1 (or any cell) is selected when I press F9, I expect 3 msgboxes (not
necessarily in order):

$A$1
$A$2
$A$3
 
R

Rick Rothstein

Application.Caller

It returns a Range, so you can get the typical Range information from it.
For example...

Addr = Application.Caller.Address
 

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