Hola glopez.
Soy medio duro de mollera pero ahora creo que te entendí...

Una solución que se me ocurre es crearte al vuelo una consulta apuntando a la misma tabla y obtener el dato de ella utilizando el BookmarkList del DBGrid:
(asumo que la tabla involucrada se llama: TU_TABLA)
Código Delphi
[-]
procedure TForm1.btnTotalClick(Sender: TObject);
var
BM: TBookMark;
i: Integer;
Tot: Double;
begin
with TIBQuery.Create(nil) do try
Database:= IBDatabase1; Close;
SQL.Text:= 'SELECT TOTAL FROM TU_TABLA'; Open;
Tot:= 0;
for i:= 0 to DBGrid1.SelectedRows.Count-1 do
begin
GotoBookmark(Pointer(DBGrid1.SelectedRows[i])); Tot:= Tot + FieldByName('TOTAL').AsFloat; end;
finally
Free;
end;
Caption:= FloatToStr(Tot); end;
Al no realizarse posicionamiento sobre la consulta relacionada al TDBGrid, este permanecerá inamovible.
Como no especificaste con que motor de BD ni componentes estas trabajando hice el ejemplo con Firebird/IBX, reemplazá por los componentes que utilices.
Un saludo.