Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi stringgrid addieren (https://www.delphipraxis.net/36312-stringgrid-addieren.html)

ibp 20. Dez 2004 10:18

Re: stringgrid addieren
 
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;

horst 20. Dez 2004 10:46

Re: stringgrid addieren
 
danke... :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:50 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz