Hi dark,
1. If a cell is changed manually or by VBA, Workseet_Change() is needed.
2. If a cell is changed manually or by VBA and the old value is needed:
a. A global variable is needed to save the old value.
b. Worksheet_SelectionChange() is needed to identify the value of the old value.
c. Workseet_Change() is needed to identify the new value, and possibly take further action.
3. If a range of values is changed by Formula (including a range containing only one cell):
a. A global array of variables is needed to store the old values.
b. The global array needes to be initialized by Workbook_Open().
c. Worksheet_Calculate() is needed to identify which cells in the range changed value.
See post #3 in the following link for posted code and a sample file:
http://www.excelforum.com/excel-prog...ionchange.html
Lewis
Bookmarks