EXCEL Process beenden VB

Gast #428198
Lesenswert?

Hallo,

ich habe für eine Messwertaufnahme ein VisualBasic Programm geschrieben, 
welches alle Messpunkt schön in eine Excel Datei ablegt. Funktioniert 
sehr gut. Allerdings habe ich jetzt festgestellt unter dem Windows Task 
Manager, dass EXCEL immer noch aktiv ist obwohl ich es vermeindlich über 
mein Programm beendet habe.

Die Funktion oExcel.Quit funktioniert nicht richtig. Excel geht zwar zu, 
verschwindet aber nicht aus dem Task Mangaer. Kennt da jemand eine 
bessere Funktion? Oder was mache ich falsch.

Danke schon mal,
Sebastian
Gast #428210
Lesenswert?

Meine prinzipielle vorgehensweise:


Dim oExcel As Object
Dim oBook As Object
Dim oSheet As Object


oExcel = CreateObject("Excel.Application")
oBook = oExcel.Workbooks.Add
oSheet = oBook.Worksheets(1)


oExcel.Quit


Für die Objekte oExcel und oSheet gibt es keine Quit Funktion. Wie soll 
ich die also freigeben?



Gast #428856
Lesenswert?

probier mal:
        'Prozess schliessen
        Dim Anwendung As String
        Anwendung = "excel"
        Dim pList() As System.Diagnostics.Process = _
    System.Diagnostics.Process.GetProcessesByName(Anwendung)
        For Each proc As System.Diagnostics.Process In pList
            Dim resp As MsgBoxResult
            resp = MsgBox("Terminate " & proc.ProcessName & "?", _
                MsgBoxStyle.YesNo, "Terminate?")
            If resp = MsgBoxResult.Yes Then
                proc.Kill()
            End If
        Next

du kannst auch die Msgbox()-Abfrage weglassen und gleich alle excel 
prozesse beenden. Beendet wirklich alle Excel Anwendungen!!

oder die alternative:

'Variablen
dim excelapp as Excel.Application
dim excelworkbook as Excel.Workbook = 
excelapp.Workbooks.open("DEIN_PFAD")

'Speichern
for each workb as Excel.Workbooks In excelapp.Workbooks()
workb.Save()
next

'Schließen
for each workb as Excel.Workbooks In excelapp.Workbooks()
workb.Close()
next

mfg
Stefan Wakolbinger

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren