I believe that MS Access is three components rolled into one 'application':
- MS Access UI (ie, tables, queries, forms, reports, etc.).
- Jet DB Engine.
I also believe that each can generate its own errors.
What I don't know is:
- How can you distinguish a Jet error from an Access Error?
- Which Jet and Access errors can fire the Form Error event?
- MS Help says: "The Form Error event occurs when a run-time error is produced in Microsoft Access when a form or report has the focus. This includes Microsoft Jet database engine errors, but not run-time errors in Visual Basic." I'm not sure if this means that the Form Error event fires for both Access errors and Jet errors, but I would be surprised if it didn't.
- An old list of all Jet Errors is available in Appendix D of: D Haught and J Ferguson, Jet Database Engine Programmer's Guide.