Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
Delphi 7 Architect
|
Re: stringgrid addieren
20. Dez 2004, 11:18
ok habs mal ausprobiert und ein wenig verbessert... nun klappts
... das problem war, dass er jede zelle der zeile pro schleigendurchlauf von i dazugezählt hat..
Delphi-Quellcode:
procedure TForm1.BitBtn7Click(Sender: TObject);
var
i, y, x: integer;
sum, m1, m2, gesamtsum: real;
nr, s, sMyExpression: string;
begin
gesamtsum:=0;
for y := 1 to 22 do
begin
sum := 0;
for i := 1 to 12 do
begin
nr := StringGrid1.Cells[i, y];
if nr = '' then
continue;
x := pos('*', nr);
if x > 0 then
begin
m1 := strtofloat(copy(nr, 1, x - 1));
m2 := strtofloat(copy(nr, x + 1, length(nr) - x));
sum := sum + (m1 * m2);
end
else
begin
x := pos('+', nr);
if x > 0 then
begin
m1 := strtofloat(copy(nr, 1, x - 1));
m2 := strtofloat(copy(nr, x + 1, length(nr) - x));
sum := sum + m1 + m2;
end
else
sum := sum + strtofloat(nr);
end;
sMyExpression := FloatToStr(sum);
stringgrid1.Cells[13, y] := sMyExpression;
end; // for i
gesamtsum:= gesamtsum + sum; // <- das muss hier hin und nicht in die i-schleife!!!
end; // for y
stringgrid1.Cells[13, 23] := FloatToStr(gesamtsum);
end;
|
|
Zitat
|