title: Release excel objects
body: <p>I have the following piece of code to format the excel files that I get and save them as modified.xlsx</p>
  
  <pre><code>public void FormatFile()
  {  
  FileName = Convert.ToString("test.xlsx");
              SourceFileLocation = ("C:\Test");
  
              SourceFileName = Path.Combine(SourceFileLocation, FileName);
              saveLoc = Path.Combine(SourceFileLocation, "ModifiedExcel.xlsx");
  
  
              var excel = new Excel.Application();
              var workbook = excel.Workbooks.Open(SourceFileName);
              //var sheet = (Excel.Worksheet)workbook.Worksheets.Item[1]; // 1 is the first item, this is NOT a zero-based collection
              try
              {
                  foreach (Excel.Worksheet tempSheet in workbook.Worksheets)
                  {
                      if (((Excel.Worksheet)(tempSheet)).Name.Contains("Sheet1"))
                      {
                          if (File.Exists(saveLoc))
                          {
                              File.Delete(saveLoc);
                          }
                          tempSheet.Select();
                          workbook.SaveAs(saveLoc);
                      }
  
                      System.Runtime.InteropServices.Marshal.ReleaseComObject(tempSheet);
                  }
  
                  workbook.Save();
                  workbook.Close();
                  excel.Quit();
  
                  System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
                  System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);
              }
              catch(Exception)
              {
                  System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
                  System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);
              }
  </code></pre>
  
  <p>I release the excel objects but when I check my task manager I can still see excel processes running. If i have run this code multiple time, that many processes are created. Am I not releasing the excel objects correctly?</p>