Насколько я помню locate перемещается по набору данных и незнаю как можно будет переместиться к записи в каком-то диапозоне.
Я думаю в Вашем случае лучше использовать фильтрацию данных.
Например:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Table1.Filter:='datn>=01/01/2008 and datn<=01.02.2008';
Table1.Filtered:=True;
end;