Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: henfoni am November 09, 2012, 15:28:56

Titel: Excel-Prozesse beenden
Beitrag von: henfoni am November 09, 2012, 15:28:56
Moin,

ich erstelle über access 2010 heraus Exceldateien. Wenn ich mehrere hintereinander erstelle, dann bleibt im Taskmanager immer der letzte Excel-Prozess offen, obwohl ich (eigentlich) alles über VBA sauber schließe.  Hier der Code wie ich die Exceldateien öffne und schließe:

    Dim myXls As Object
    Dim myWB As Object
    Dim myWS As Object
    Set myXls = CreateObject("Excel.Application")
    Set myWB = myXls.Workbooks.Open(speicherOrt & "leere Vorlage MA.xls")
    Set myWS = myWB.Worksheets(1)

...Bearbeitung

    myWB.SaveAs speicherOrt & Name & " " & Format(Now, "hhmmss") & ".xls"
    myXls.Quit
    Set myWS = Nothing
    Set myWB = Nothing
    Set myXls = Nothing

Kann mir nicht erklären, warum immer Excel-Prozesse offen bleiben. Das komische ist, wenn ich die Funktion, die die Exceldateien erstellt nur einfach aufrufe, dann bleibt kein ExcelProzess. Kann mirs einfach nicht erklären!

Wäre super, wenn mir jmd irgendwie weiterhelfen könnte
Titel: Re: Excel-Prozesse beenden
Beitrag von: ebs17 am November 09, 2012, 15:44:14
a) Man sollte auch die Mappe schließen, nicht nur Excel insgesamt.
b) Es genügt eine eigene Excelinstanz für die gewünschten Maßnahmen, schon weil das Excelobjekt ein ziemlich großes ist und ein jeweiliges Neuinstanzieren Zeit kostet.

MfGA
ebs
Titel: Re: Excel-Prozesse beenden
Beitrag von: henfoni am November 09, 2012, 16:20:43
hey, danke für deinen Tipp. Das Workbookschließen hat schon viel gebracht!
Alles über eine Instanz laufen zu lassen klappt irgendwie noch nicht, kommt immer ein Fehler, aber da muss ich nochmal genauer schauen.
Aber jetzt läufts schon richtig flüssig, dank dir!