So ich hoffe das ist hier die richtige Kategorie, sonst könnte das bitte jemand verschieben.
Mein Problem: Ich schreibe ein Programm, das eine Exceldatei öffnen soll, dann einen Wert eintragen, und dann drucken soll. Das funktioniert auch wunderbar. Wenn ich das Ausgeführt habe bleibt allerdings immer ein Excelprozess im Taskmanager erhalten. Hoffe ihr könnt mir helfen woran das liegt; und wie ich es ändern kann. Hier ein Ausschnitt aus meinem Programm.
Code:
procedure TForm1.btndruckenClick(Sender: TObject);
var i: Integer;
begin
// Excel starten
try
Excel := CreateOleObject('Excel.Application');
except
ShowMessage('Excel konnte nicht gestartet werden!');
Exit;
end;
// Laden
//Excel.workbooks.Add('Test');
Excel.workbooks.open(edtspeicherort.Text);
Excel.visible := true;
// und drucken
for i := 0 to High(daten) do
begin
Excel.Cells[1,1].Value := daten[i];
Excel.worksheets.Printout;
end;
//Sleep(1000);
Excel.Activeworkbook.saved := True;
Excel.workbooks.close;
Excel.quit;
Excel := unassigned;
end;