No se si con ADO es igual que con otros conectores, pero si le asignas un valor a RecNo, el cursor se para en dicha posición...
Por ejemplo
Código Delphi
[-]AdoDataset1.RecNo := 250;
Y listo, pero bueno, de ahí a la eficiencia de esto, pues no creo que sea mejor que traer el dato de una vez, como lo ha planteado poliburro.