Forum: PC-Programmierung Excel bleibt im Taskmanger wenn ich es mit mit C# öffne


von Klatec (Gast)


Lesenswert?

Hallo Zusammen

Ich kopiere eine *.xlsx von einer Default-Datei und öffne die neue Datei 
und wenn ich diese Datei in Excel schließe bleibt sie aber im 
Taskmanager offen. Was mache ich falsch, kann mir jemand helfen. bitte. 
Danke.

Lg.
Johann K.

               string strFileNameDestin = strAppPath + 
"\\Export-Inport\\Fb" + (i + 1) + ".xlsx";


                FileInfo fi2 = new FileInfo(strFileNameDestin);

                try
                {

                    if (File.Exists(strFileNameDestin))
                        fi2.Delete();
                    File.Copy(strFileNameSource, strFileNameDestin); 
//Datei kopieren
                }
                catch (IOException ioex)
                {
                    MessageBox.Show(ioex.Message);
                }

                Excel.Application excel = new Excel.Application();

                // Arbeitsmappe öffnen
                object missing = Missing.Value;


                Excel.Workbook workbook1 = 
excel.Workbooks.Open(strFileNameDestin, missing, missing, missing,
                    missing, missing, missing, missing, missing, 
missing, missing, missing, missing,
                    missing, missing);


                Excel.Worksheet WSFb = 
(Excel.Worksheet)workbook1.Sheets[1];
                Excel.Range range = null;

                string strTemp=null;
                range = (Excel.Range)WSFb.Cells[8, 3]; //Name
                range.Value = stuFb[i].Name;

                range = (Excel.Range)WSFb.Cells[9, 3]; //Datum
                range.Value = stuFb[i].Datum;

                range = (Excel.Range)WSFb.Cells[10, 3]; //Einbauort
                range.Value = stuFb[i].Ort;

                range = (Excel.Range)WSFb.Cells[11, 3]; 
//Produktbezeichnung
                range.Value = stuFb[i].BgTyp;

                range = (Excel.Range)WSFb.Cells[12, 3]; //Seriennummer
                range.Value = stuFb[i].SerNr;

                range = (Excel.Range)WSFb.Cells[15, 3]; 
//Fehlerbeschreibung
                range.Value = stuFb[i].Fehlerbesch;

                range = (Excel.Range)WSFb.Cells[23, 3]; 
//Diagnosebericht
                if(stuFb[i].Diagn==false)
                    strTemp="nein";
                else
                    strTemp="ja";
                range.Value = strTemp;

                range = (Excel.Range)WSFb.Cells[26, 3]; //Fehler tritt 
auf
                range.Value = stuFb[i].FehlWie;

                range = (Excel.Range)WSFb.Cells[29, 3]; //Fehler wurde 
festgestellt
                switch (stuFb[i].FehlWo)
                {
                    case "Betrieb":
                        strTemp = "im Bertieb";
                        break;

                    case "Inbetriebnahme":
                        strTemp = "bei der  Inbertiebnahme";
                        break;

                    case "Prüfung":
                        strTemp = "bei einer Prüfung";
                        break;

                    case "Sonstige":
                        strTemp = "Sonstige";
                        break;
                }
                range.Value = strTemp;

                workbook1.Save();
                excel.Visible = true;

von Klatec (Gast)


Lesenswert?

Hallo Zusammen

Hat sich schon erledigt, wenn das C# Programm geschlossen wird, wird 
auch Excel geschlossen.

Lg.

Johann K.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Klatec schrieb:
> Ich kopiere eine *.xlsx von einer Default-Datei und öffne die neue Datei
> und wenn ich diese Datei in Excel schließe bleibt sie aber im
> Taskmanager offen.

Was magst Du damit meinen?

von Marvol (Gast)


Lesenswert?

Hallo,

Du kannst die Excel Instance auch in Deinem Programm schließen:

http://stackoverflow.com/questions/17777545/closing-excel-application-process-in-c-sharp-after-data-access

Dann hast Du die volle Kontrolle.

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
Noch kein Account? Hier anmelden.