Truco "sucio" para moverse a la última fila visible del DBGrid:
Código:
type
THackGrid = class(TDBGrid);
...
var
Delta: LongInt;
begin
with THackGrid(DBGrid1) do
begin
Delta := VisibleRowCount - Row;
DataSource.DataSet.MoveBy(Delta);
end;
end;
// Saludos