Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Obwohl ExcelApp.Quit wird aber nicht beendet (https://www.delphipraxis.net/169145-obwohl-excelapp-quit-wird-aber-nicht-beendet.html)

t0mmy 2. Jul 2012 13:45

Obwohl ExcelApp.Quit wird aber nicht beendet
 
Hallo!

Also ich fülle ein Excel-File mit Daten:

Mit folgendem Code rufe ich die Excelfunktion zur bearbeitung einer Exceldatei auf:
Delphi-Quellcode:
  ExcelApp1 := CreateOleObject('Excel.Application');
  ExcelApp1.Workbooks.open(aDir + '\Excelliste.xls');
  ExcelListe1 := ExcelApp1.Workbooks[1].WorkSheets[1];
Zum schluss speicher ich die Datei ab und schließe die Excel applikation
Delphi-Quellcode:
ExcelApp1.Workbooks[1].Save;
ExcelApp1.DisplayAlerts := False;
ExcelApp1.Quit;
Jedoch läuft Excel.exe noch immer im Hintergrund (Taskmanager)

Kann mir jemand einen Tipp geben worans liegen könnte?

Edit: Ich hab auch die Suchfunktion genutzt und habe dabei das hier gefunden:

http://www.delphipraxis.net/109658-e...anwendung.html

Aber ist "kill" die einzige Möglichkeit den Excelprozess im Taskmanager zu schließen?

omata 2. Jul 2012 14:06

AW: Obwohl ExcelApp.Quit wird aber nicht beendet
 
ExcelApp1.Disconnect;

t0mmy 2. Jul 2012 14:17

AW: Obwohl ExcelApp.Quit wird aber nicht beendet
 
@omata: Deinen Befehl gibt es nicht.

Habe vor lauter drüberlesen vergessen auf die zweite Seite zu klicken.

Dort wird mit folgender Funkion (die auf meinen Code abgeändert wurde) die Excelanwendung auch im Speicher geschlossen:

Delphi-Quellcode:
ExcelApp1.DisplayAlerts := False;
ExcelApp1.Quit;
ExcelApp1 := unassigned;
ExcelListe1 := unassigned;

p80286 2. Jul 2012 14:42

AW: Obwohl ExcelApp.Quit wird aber nicht beendet
 
Leider ist Excel nict gleich Excel.
Unter 2003/vba 6 funktioniert
Delphi-Quellcode:
  Excel.ActiveWorkbook.Close;
  Excel.Quit;
  Excel:=unassigned;
wie gewünscht.

Gruß
K-H

omata 2. Jul 2012 14:52

AW: Obwohl ExcelApp.Quit wird aber nicht beendet
 
Zitat:

Zitat von t0mmy (Beitrag 1173171)
@omata: Deinen Befehl gibt es nicht.

Ups, ich benutze immer TExcelApplication und dort gibt es das Disconnect.

Sorry

FediDelPr 8. Jan 2019 03:12

AW: Obwohl ExcelApp.Quit wird aber nicht beendet
 
Ich habe das selbe Problem. Das geöffnete und wieder geschlossene File bleibt gelockt bis
das Applikationsprogramm beendet ist. Zu diesem Zeitpunkt verschwindet der EXCEL-Eintrag auch
aus der Liste der Hintergrund-Programme im Windows Task-Manager.

Ich führe folgenden Code aus:

Delphi-Quellcode:
Excel.WorkBooks.Close;
Excel.Quit;
Excel := unassigned; (* bringt nichts *)
Ich verwende EXCEL 365 aktuelle Version.

kompi 8. Jan 2019 08:14

AW: Obwohl ExcelApp.Quit wird aber nicht beendet
 
Versuche es mal mit

ExcelApp.application.quit

Dann sollte es funktionieren. Ist jedenfalls bei mir mit Excel 2010 so.

Gruß Kompi

FediDelPr 8. Jan 2019 14:30

AW: Obwohl ExcelApp.Quit wird aber nicht beendet
 
Geht bei mir leider auch nicht.

Ich probiere mal weitere Varianten.

Jumpy 8. Jan 2019 15:12

AW: Obwohl ExcelApp.Quit wird aber nicht beendet
 
@FediDelPr: Kannst du mal deinen Code zeigen den du jetzt hast (den Part mit Excel)?

kompi 8. Jan 2019 15:35

AW: Obwohl ExcelApp.Quit wird aber nicht beendet
 
Bei dir muss es natürlich heißen:

Excel.application.quit

Es muss jedoch vorher sicher gestellt sein, dass alle Workbooks geschlossen sind. Beim Schließen der Workbooks kann es jedoch passieren, dass Excel fragt, da das Workbook geändert wurde, ob man speichern möchte. Dies sieht man jedoch nicht, wenn Excel auf nicht sichtbar eingestellt ist. Wenn die Datei bereits vorhanden ist, so fragt Excel auch hier, ob die Datei überschrieben werden soll.

Um zu sehen, was passiert, würde ich Excel zunächst auf sichtbar schalten und Displayalerts auf true.

Gruß Kompi


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:19 Uhr.
Seite 1 von 3  1 23      

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