Two additional comments ...

1) If your going to be poking more than one range with values, maybe you can modify the function to except an array of range/value pairs - and update the cells in one batch.

2) In all your testing and modifying - keep an eye on TaskMgr and instances of the EXCEL process. These are COM servers, that run as detached processes - and if your not careful the processes can get "orphaned" ... if you start seeing a build-up of EXCEL processes - your doing something wrong (like, not releasing all your object handles etc) - just a caution.