faeryfyrre
Programmer
Hi,
Just wanted to collate some of the information i've found in various threads regarding the "Error 3001: Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another." error that Access/ADO throws sometimes when using the .Find method.
I found the answer scattered through 4 seperate threads
thread705-749179
thread705-641785
thread705-549661
thread705-96809
to summarise
1. The .Find method has issues with complex criteria. IE works fine when you've only got one criteria but as soon as you start using AND or OR to build a complex expression .Find has a hissy fit.
2. The .Find method can seriously affect efficiency as it rereads from the Data Source (server) every time its called.
3. The ADO method .Filter is a good alternative to .Find as it is uses a Client-Side Cursor (does NOT reread from Data Source) and can also handle complex criteria.
Alec Doughty
Doughty Consulting P/L
"Life's a competition. Play hard, but play fair"
Just wanted to collate some of the information i've found in various threads regarding the "Error 3001: Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another." error that Access/ADO throws sometimes when using the .Find method.
I found the answer scattered through 4 seperate threads
thread705-749179
thread705-641785
thread705-549661
thread705-96809
to summarise
1. The .Find method has issues with complex criteria. IE works fine when you've only got one criteria but as soon as you start using AND or OR to build a complex expression .Find has a hissy fit.
2. The .Find method can seriously affect efficiency as it rereads from the Data Source (server) every time its called.
3. The ADO method .Filter is a good alternative to .Find as it is uses a Client-Side Cursor (does NOT reread from Data Source) and can also handle complex criteria.
Alec Doughty
Doughty Consulting P/L
"Life's a competition. Play hard, but play fair"