UDF to show the expression of cell formula.

With VBA, it's easy to show precedents of the cell :



But when we compile this as an UDF,it won't work in worksheet:

If we input a formula "=MyPrecedents(A1)" in [B1],it will show "$A$1" instead of "$B$2,$C$3,$D$9". It returns only the address of MyCell! I t is not passed to the function as an argument ,What's wrong with it?


Furthermore, if we need the expression with orign data, a feasible method is to use "Worksheet_Change" event subroutine instead. (See F36 of http://club.excelhome.net/viewthread.php?tid=663427&pid=4519978&page=4)



And after many tests,I found a way to use UDF at last.



原文地址:https://www.cnblogs.com/fengju/p/6336184.html