Para acelerar el tema :
Código Delphi
[-]
Table.DisableControls;
for i := 0 to Table.FieldsCount -1 do
Table.Fields[i].AsString := Table.Fields[i+1].AsString;
Table.EnableControls;
DisableControls deshabilita la parte visual (que se refresquen con los datos nuevos que van tomando)
EnableControls habilita nuevamente la parte visual.
Creo que ni siquiera es necesario hacer un refresh.