Microsoft Access Error Codes
Microsoft Access is no exception to the rule that Microsoft provides the developer with not very helpful error messages.
In the following some of the most entertaining error codes and their true meaning are described.
Data type mismatch in criteria expression
You are using a function, where one of the parameters is NULL or not of the expected type, the function produces #Error and you are trying to filter against the result of the function. Even if one single function call will result in #Error this error will be raised.
Operation must use an updateable query
There is a nice coverage of this error. There are two recommendations for circumventing this error: Use a temporary table as intermediate step, use aggregate functions (domain functions) like DSum or write your own user defined function for complex calculation.
49 : Bad DLL Calling Convention
Your database became corrupt. Decompile the database by using the command line switch /decompile, compact and repair your database.
2001 : You canceled the previous operation
You called a domain function like DLookup and specified a field that does not exist in the table.
3349 : Numeric field overflow
Usually this error should be raised when you try to process a value that is too big for the variable you are trying to assign it to, ie if you try to put a value greater than 32767 into an integer data type, as integers can only contain values between -32,768 and 32,767.
Less often but much less obvious is the case that you are trying to hold an invalid value in a date field. Access is known to have problems with dates lesser than 1000-01-01 and of course negative values.