Добрый день.
Грид не содержит данные.
Для пересчета значений записей необходимо обращаться к DataSet'у.
Но возможность такого пересчета зависит от типа DataSet'а.
Необходимо чтобы DataSet имел возможность получить значение определенной записи без перемещения по записям.
В вашем случае возможно проще будет заканчивать режим редактирования записи сразу после закрытия текстового редактора ячейки.
Для этого необходимо написать обработчик события TColumnEh.OnUpdateData примерно следующим образом
Код:
procedure TForm1.DBGridEh1Columns3UpdateData(Sender: TObject; var Text: string;
var Value: Variant; var UseText, Handled: Boolean);
begin
MemTableEh1.Edit;
(Sender as TColumnEh).Field.Text := Text;
MemTableEh1.Post;
Handled := True;
end;