Delphi-Quellcode:
function SeekRecord(Grid: TStringGrid; suchtext: string; Var StartZeile:Integer; Var StartSpalte:Integer): Boolean;
var
Spalte, Zeile: integer;
begin
result := false;
for Zeile := StartZeile to Grid.RowCount do
for Spalte := StartSpalte to Grid.ColCount do
begin
if Pos(suchtext, Grid.Cells[Spalte, Zeile]) > 0 then
begin
Grid.Col := Spalte;
Grid.Row := Zeile;
result := true;
MessageDlg('Der Suchbegriff "' + suchtext + '" wurde an folgender Stelle gefunden:' + #13 + #10 + '' + #13 + #10 + 'Zeile: ' + IntToStr(Zeile) + #13 + #10 + 'Spalte: ' + IntToStr(Spalte), mtInformation, [mbOK], 0);
StartZeile := Zeile;
StartSpalte := Spalte;
exit;
end;
end;
end;
In der Art würde ich es versuchen.
Du hast dann zwar zwei Parameter mehr, weißt dafür aber genau, wo es gefunden wurde. Für das Weitersuchen musst du aber den neuen Startpunkt erhöhen. Sonst bekommst du immer dasselbe Ergebnis.