Dieser Schnippsel functioniert,aber es sucht nicht in alle columns.
wenn ich es für maxcol=2 und maxrow=2 gemacht
er hat mir vier mal showmessage gezeigt??
könnte jemand mir hilfen,wo meine Fehler ist??
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
WorkBook, sheet: OleVariant;
X, Y: Integer;
maxcol, maxRow: Integer;
openDialog: TOpenDialog;
begin
if openDialog.Execute then
begin
try
excel := CreateOleObject('Excel.Application');
except
ShowMessage('Excel konnte nicht gestartet werden !');
exit;
end;
excel.Visible := true;{ für die testphase sinnvoll }
excel.workbooks.open('C:\Users\qatrangi\Desktop\OSM neu\Marker1.xlsx');
excel.activeworkbook.sheets[1].activate;
maxcol := excel.columns.count;
maxRow := excel.rows.count;
for X := 1 to maxcol do
begin
for Y := 1 to maxRow do
begin
if edit1.text = excel.cells.Item[y, x].Value then
begin
excel.Cells.Find(edit1.text,excel.Cells.Item[y,x], xlValues, xlWhole, xlByColumns, xlNext, False, False);
excel.cells[y,x].select;
showmessage('yes') ;
exit;
//polydrow(Edit1.Text);
// StringGrid1.cells[X - 1, Y - 1] := excel.cells.Item[X, Y].Value
end
else showmessage('no');
end;
end;
excel.workbooks.close;
excel := Unassigned;
end;
end;