Si no actúa con rapidez es porque no tienes un índice declarado para la búsqueda que estás efectuando.
Cita:
Locate returns True if it finds a matching record, and makes that record the current one. Otherwise Locate returns False.
Locate uses the fastest possible method to locate matching records. If the search fields in KeyFields are indexed and the index is compatible with the specified search options, Locate uses the index. Otherwise Locate creates a filter for the search.
|
Resumiendo para no traducir toda la ayuda al respecto, si los campos por los que se busca están indexados y el índice es compatible con las opciones de búsqueda especificadas,
Locate utiliza el índice. En caso contrario crea un filtro para la búsqueda.
En este último caso, no tener un índice apropiado, vuelve la búsqueda muy lenta, la solución sería o bien crear un índice apropiado o sino abstenerse de dicha instrucción y utilizar simplemente SQL como te indica el compañero JachGuate.
Un Saludo.