Fechando uma pasta de trabalho do Excel
Eu tenho um pouco de código que abre uma pasta de trabalho xls;
Excel.Workbooks workBooks;
workBooks = excelApp.Workbooks;
workbook = workBooks.Open(sourceFilePath + sourceFileName + ".xls");
Eu então pego a folha de trabalho;
worksheets = workbook.Worksheets;
worksheet = worksheets.get_Item("Standard");
Em seguida, salve o arquivo como um csv;
worksheet.SaveAs(sourceFilePath + sourceFileName + ".csv", Excel.XlFileFormat.xlCSVWindows, Type.Missing, Type.Missing, false, false, Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, Type.Missing);
Então eu tento fechar a pasta de trabalho;
Marshal.FinalReleaseComObject(worksheet);
Marshal.FinalReleaseComObject(worksheets);
workbook.Close();
Marshal.FinalReleaseComObject(workbook);
No entanto, toda vez que eu chego à pasta de trabalho de linha.Fechar (), o sistema para.
Se eu não fizer o SaveAs, a pasta de trabalho fechará bem.
Como faço para fechar uma pasta de trabalho?
editar
Olhando para o Gerenciador de Tarefas me mostra que o Excel.exe ainda está em execução. Fechar isso produzirá um erro no meu código.
editar 2
Eu já vi a postagem do SO referenciada e ela não resolveu o problema.