I have this original snippet which copies datagridview values into the microsoft excel sheet: for  ( int  i = 0; i < dataGridViewObjects[gcount].Columns.Count; i++)   {      sheet.Cells[1, i + 1] = dataGridViewObjects[gcount].Columns[i].Name;                    for  ( int  row = 0; row < dataGridViewObjects[gcount].Rows.Count; row++)      {           for  ( int  column = 0; column < dataGridViewObjects[gcount].Columns.Count; column++)           {               sheet.Cells[row + 2, column + 1] =dataGridViewObjects[gcount].Rows[row].Cells[column].Value;           }      } }   The code above throws an exception of method type signature is not interop compatible. I was debugging and checking MSDN classes on Workbook. When I debugged at adding cell values, i did catch the exception.   The solution is simple. Just add ToString() after the value, since value is of type object.  sheet.Cells[row + 2, column + 1] = dataGridViewObjects[gcount].Rows[row].Cells[column].Value.ToString();