I've tested dclamp's code and it works flawlessly. The code is longer than average, but not excessive. I really liked how you were able to clear out the set and try again, but I did not like the use of the VisualBasic namespace(portability).