Delphi-PRAXiS
Seite 1 von 5  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Cellen im Stringgrid zusammenrechnen (https://www.delphipraxis.net/115324-cellen-im-stringgrid-zusammenrechnen.html)

SaFu 10. Jun 2008 12:37


Cellen im Stringgrid zusammenrechnen
 
Tach

Stehe mal wieder vor einem Problem und zwar versuche ich gewisse Zellen im StringGrid zusammen zu addieren

Folgendes wenn in Spalte Way der String OUT vorkommt (hab ich auch soweit), dann soll in der Spalte Zahlx die jweilige Zeile in der, der String OUT gefunden wurde der Wert der Spalte Zahlx zusammen gezählt werden

Delphi-Quellcode:
 procedure findStrings(sl:TStrings);
var i :Integer;
begin
 for i := 1 to Pred(sl.Count)-1 do
  if (sl[i]) = 'OUT' then
   begin
   
   end
end;

procedure TForm1.Button6Click(Sender: TObject);
Var i : integer;
begin
 for I := 0 to StringGrid1.RowCount - 1 do
  if StringGrid1.Cells[i,0] = 'Way' then
      findStrings(StringGrid1.Cols[i]);

end;
Hoffe ich habe es verständlich erklärt

mkinzler 10. Jun 2008 12:39

Re: Cellen im Stringgrid zusammenrechnen
 
Du musst die Inhalte von String in einen Integer- oder Float-Typ Casten
(TryStringToFloat, StringToFloatDef)

SaFu 10. Jun 2008 12:44

Re: Cellen im Stringgrid zusammenrechnen
 
Ja besser wär float da ic komma stellen habe

Aber wo mache ich das am besten daran scheitert es auch gerade

mkinzler 10. Jun 2008 12:46

Re: Cellen im Stringgrid zusammenrechnen
 
Beachte die Funktionen in der Klammer

SaFu 10. Jun 2008 12:52

Re: Cellen im Stringgrid zusammenrechnen
 
Welche die

Delphi-Quellcode:
findStrings(sl:TStrings);
die müsste dann noch erweitert werden oder??

mkinzler 10. Jun 2008 13:06

Re: Cellen im Stringgrid zusammenrechnen
 
Ja

SaFu 10. Jun 2008 13:16

Re: Cellen im Stringgrid zusammenrechnen
 
ok

muss ich dann noch eine zweite schleife mit einbinden

Delphi-Quellcode:

procedure TForm1.Button6Click(Sender: TObject);
Var i,x : integer;
begin
 for I := 0 to StringGrid1.RowCount - 1 do
  if StringGrid1.Cells[i,0] = 'Way' then
   if StringGrid1.Cells[x,0] = 'Switch' then

      findStrings(StringGrid1.Cols[i],StringGrid1.Cols[x]);
end;
und die werte in der funktion weiter verarbeiten

SaFu 10. Jun 2008 14:10

Re: Cellen im Stringgrid zusammenrechnen
 
So jetzt bin ich schonmal weiter und hab die einträge aus der spalte in meiner Stringlist

jetzt hab ich nur zwei Proble

1 Es wird nicht nur der wert der Zeile ind OUT steht übergeben sondern alle

2 Wie Rechne ich dann alles zusammen

So hab ich es jetzt
Delphi-Quellcode:
procedure findStrings(sl:TStrings;s:TStrings);
var i :Integer;
    ergebnis :Tstrings;
begin
 ergebnis:= TStringList.Create;
  try
   for i := 1 to Pred(sl.Count)-1 do
    if (sl[i]) = 'OUT' then
     begin
      ergebnis.AddStrings(s);
     end;
    ergebnis.saveToFile('C:\test.txt');
   finally
  ergebnis.Free;
  end;
end;

procedure TForm1.Button6Click(Sender: TObject);
Var i,x : integer;
begin
 for I := 0 to StringGrid1.RowCount - 1 do
  if StringGrid1.Cells[i,0] = 'Way' then
   for x := 0 to StringGrid1.RowCount -1 do
   if StringGrid1.Cells[x,0] = 'Switch' then

      findStrings(StringGrid1.Cols[i],StringGrid1.Cols[x]);
end;

DeddyH 10. Jun 2008 14:16

Re: Cellen im Stringgrid zusammenrechnen
 
Zitat:

Delphi-Quellcode:
for I := 0 to StringGrid1.RowCount - 1 do
  if StringGrid1.Cells[i,0] = 'Way' then
   for x := 0 to StringGrid1.RowCount -1 do

Bist Du sicher, dass Du beide Male auf RowCount zugreifen willst?

SaFu 10. Jun 2008 14:18

Re: Cellen im Stringgrid zusammenrechnen
 
Ja schon die In der 1 Zeile steht meine überschrift da geh ich durch wo dieser string steht und und versuche diese werte zu übergeben aber nur die werte in der OUT steht und diese stehen in der Spalte bei SwichedDuration


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:38 Uhr.
Seite 1 von 5  1 23     Letzte »    

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