using Locate method with filtered dataset

When I use 'Locate' method on a dataset that is not filtered, correct record
is returned. However, if I apply some filter to the dataset, 'Locate'
returns incorrect record or raises exception 'Record not found'.
I use DAO with Access 2000 database.
Is there a workaround?