AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Leere Zellen in StringGrid

Ein Thema von Stecky2000 · begonnen am 7. Mai 2008 · letzter Beitrag vom 8. Mai 2008
Antwort Antwort
Seite 1 von 2  1 2   
Stecky2000

Registriert seit: 7. Mai 2008
Ort: Trebur
66 Beiträge
 
Delphi 2010 Professional
 
#1

Leere Zellen in StringGrid

  Alt 7. Mai 2008, 23:03
Hallo allerseits.

Bin neu hier, hatte auch schon geposted, aber entweder hab ich was falsch gemacht oder...
Sollte mein Post nun doppelt erscheinen, bitte ich darum ihn zu löschen.

Also, ich bin kein Programmierer, befasse mich nur hobbymäßig damit und hab ein paar kleinere Programme geschrieben.
Für mein neues Projekt übe ich schon fleissig mit dem StringGrid.

Dabei finde ich keine Lösung, auch nicht über die Boardsuche.

Im Endeffekt habe ich im StringGrid 3 Spalten mit 15 Zeilen.
In Spalte 1 sollen die Werte aus Spalte 2 und 3 addiert werden.
Das mache ich über eine Schleife, ist alles kein Problem.

Leider wird das Programm eine Fehlermeldung aus, wenn in den zu addierenden Zellen 2 oder 3 kein Wert steht, sie also leer sind.

Deshalb wollte ich das mit folgendem Code abfangen, das funktioniert aber im StringGrid nicht.
Ich bin der Meinug das schon mit Edit1.Text erfolgreich genutzt zu haben und es im Internet auch gelesen zu haben. Nur, wie gesagt, mit dem StringGrid geht es nicht.

Kann mir jemand sagen warum?

So sieht der Code aus:

Delphi-Quellcode:
If StringGrid3.Cells[3, i] <> 'then ...
dann addiere
ich hab auch schon so probiert

Delphi-Quellcode:
If StringGrid3.Cells[3, i] = 'then ...
dann addiere nicht
also das Gegnteil.

Beides geht nicht. Welche Besonderheit gibt es beim StringGrid mit diesem Check?
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#2

Re: Leere Zellen in StringGrid

  Alt 7. Mai 2008, 23:36
Die Lösung liegt doch auf der Hand. Beide Lösungen gehen nicht => an falscher Stelle eingebaut. Der Quelltext scheint streng geheim zu sein, deshalb kann man nicht viel mehr sagen.
Gruß
Hansa
  Mit Zitat antworten Zitat
michaelg

Registriert seit: 20. Apr 2008
39 Beiträge
 
#3

Re: Leere Zellen in StringGrid

  Alt 7. Mai 2008, 23:39
Könnte es sein, daß es sich nicht um Leerstrings handelt, sondern um NULL-Values? Wir wissen ja nicht, wie er das Grid mit den Werten befüllt.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#4

Re: Leere Zellen in StringGrid

  Alt 7. Mai 2008, 23:57
Damit wären wir hier :

Zitat von Stecky2000:
..Leider wird das Programm eine Fehlermeldung aus, wenn in den zu addierenden Zellen 2 oder 3 kein Wert steht, sie also leer sind.
Also so wie immer. Verschweigen/Unterdrückung der Fehlermeldung etc.
Gruß
Hansa
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#5

Re: Leere Zellen in StringGrid

  Alt 8. Mai 2008, 00:06
da muss ich hansa recht geben, zeig doch mal, was du bereits hast...

... dann stochern wir auch nicht nur um trüben
  Mit Zitat antworten Zitat
bluesbear

Registriert seit: 14. Dez 2005
Ort: Hahnstätten
355 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Leere Zellen in StringGrid

  Alt 8. Mai 2008, 06:37
Ich rate mal mit <g>:
Laut Beschreibung dürfte im Stringgrid eine Spalte mit Index 3 nicht existieren.
Klaus M. Hoffmann
  Mit Zitat antworten Zitat
Stecky2000

Registriert seit: 7. Mai 2008
Ort: Trebur
66 Beiträge
 
Delphi 2010 Professional
 
#7

Re: Leere Zellen in StringGrid

  Alt 8. Mai 2008, 07:02
Hallo,

sorry, der Quelltext ist natürlich nicht geheim. Ich wollte das Problem aus meiner Sicht vereinfachen.
Des weiteren habe ich, da ich wie gesagt kein Programmierer bin, mein unprofessionellen Code ein wenig "verstecken" um nicht ausgelacht zu werden.

Aber, was solls. Ich habe es heute morgen plötzlich doch hin bekommen, dachte das gestern schon so probiert zu haben...

Wie Ihr sehen werdet, gehts auch nicht um 3 Splaten sondern um 5 (inkl. Fixrow), relevant sind aber nur 3 Spalten. Zur Zeit scheint es so zu funktionieren:

Delphi-Quellcode:
Procedure TForm1.Zeitenrechner;
var
i: Integer;

begin
     For i := 1 to 16 do
         If (StringGrid3.Cells[2, i] = '') or (StringGrid3.Cells[3, i] = '') then
         next
         else
         StringGrid3.Cells[2, i] := IntToStr(StrToInt(StringGrid3.Cells[4, i]) - StrToInt(StringGrid3.Cells[3, i]));

end;

Ich hätte es zwar lieber so, aber das geht nicht:

Delphi-Quellcode:
Procedure TForm1.Zeitenrechner;
var
i: Integer;

begin
     For i := 1 to 16 do
         If (StringGrid3.Cells[2, i] <> '') or (StringGrid3.Cells[3, i] <> '') then
         StringGrid3.Cells[2, i] := IntToStr(StrToInt(StringGrid3.Cells[4, i]) - StrToInt(StringGrid3.Cells[3, i]));

end;
Klappt das "ungleich hier nicht?
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.979 Beiträge
 
Delphi 7 Professional
 
#8

Re: Leere Zellen in StringGrid

  Alt 8. Mai 2008, 07:10
Moin, Moin,
also da verstehe ich einiges nicht so recht: Du prüfst die Spalten 2 und 3 und rechnest dann mit den Spalten 3 und 4, das Ergebnis kommt dann in Spalte 2?? Im ersten Post hast du das anders beschrieben...

// edit
Um auf die eigentliche Frage einzugehen: In der alternativ-Schleife musst du die Abfragelogik "umdrehen", d.h. die beiden Prüfungen müssen in diesem Fall mit AND verknüpft werden.
Ralph
  Mit Zitat antworten Zitat
Stecky2000

Registriert seit: 7. Mai 2008
Ort: Trebur
66 Beiträge
 
Delphi 2010 Professional
 
#9

Re: Leere Zellen in StringGrid

  Alt 8. Mai 2008, 07:51
Hast Recht, der Fehler ist mir eben beim Fummeln rein gekommen.
Es geht natürlich so:

Delphi-Quellcode:
Procedure TForm1.Zeitenrechner;
var
i: Integer;

begin
     For i := 1 to 16 do
         If (StringGrid3.Cells[3, i] = '') or (StringGrid3.Cells[4, i] = '') then
         next
         else
         StringGrid3.Cells[2, i] := IntToStr(StrToInt(StringGrid3.Cells[4, i]) - StrToInt(StringGrid3.Cells[3, i]));

end;
Und, Du hast auch da Recht mit dem kleinen Wörtchen "and" geht auch die zweite Wunschalternative!
Vielleicht war ich gestern abend einfach zu müde um klar zu denken

Ich danke Euch vielmals und werde, wenn Ihr nicht gegen dumme Fragen eines "Fummlers" habt, noch ab und zu hier sein.
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.979 Beiträge
 
Delphi 7 Professional
 
#10

Re: Leere Zellen in StringGrid

  Alt 8. Mai 2008, 08:07
Ach, da würd ich mir keine Sorgen machen: Die wenigsten Fragen sind wirklich "dumm"
Ralph
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf