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
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?
So wie man das immer in VB mit Objekten machen sollte, die man nicht mehr braucht mit Nothing.
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.