Referencing "current" row (not using ActiveCell.Row)

M

Mark

This must be easy, but I'm being a bit stupid here as I can't find the
method that I'm after.

I have a custom volatile function that I want to return the row in which the
function is used - not the active row. (Actually, it does a lot more, but
this is the crux of the problem.)

So:

Function GetRow()
Application.Volatile (True)
GetRow = Application.ActiveCell.Row
End Function

doesn't work because if I click away from the cell that uses the function,
the cell then gets the value of the active cell and not the one in which the
function is used. After much searching on MS and Google, I admit that I'm
stumped. :-|

Any ideas?

TIA
MArk
 
K

keepITcool

Function CallerAddr()
Application.Volatile
CallerAddr = Application.Caller.Address(external:=True)
End Function
Function CallerRow()
Application.Volatile
CallerRow = Application.Caller.Row
'This must be part of s'thing else
'=ROW() would be lots more efficient
End Function





keepITcool

< email : keepitcool chello nl (with @ and .) >
< homepage: http://members.chello.nl/keepitcool >
 
M

Mark

keepITcool said:
Function CallerAddr()
Application.Volatile
CallerAddr = Application.Caller.Address(external:=True)
End Function
Function CallerRow()
Application.Volatile
CallerRow = Application.Caller.Row
'This must be part of s'thing else
'=ROW() would be lots more efficient
End Function

Perfect! Thanks very much. :)

Mark
 
Top