What is the best construct for handling errors?
The Try/Catch/Finally structure is becoming the most common error-handling construct. It has significant advantages over On Error .
How will I know what errors to test for?
You test for error conditions that are right for the application you are building. See the earlier discussion on design considerations.