سلام
از این کد هم می تونید کمک بگیرید:
Microsoft.Office.Interop.Excel.Application _App = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook _WorkBook = _App.Workbooks.Add(Type.Missing);
Microsoft.Office.Interop.Excel.Worksheet _WorkSheet = null;
_WorkSheet = _WorkBook.Sheets["Sheet1"];
_WorkSheet = _WorkBook.ActiveSheet;
_WorkSheet.Name = "ErrorList";
_WorkSheet.DisplayRightToLeft = true;
_WorkSheet.Cells.Font.Name = "Tahoma";
_WorkSheet.Cells.NumberFormat = "@";
for (int i = 1; i < this.dgvErrorByAction.Columns.Count + 1; i++)
{
_WorkSheet.Cells[1, i] = dgvErrorByAction.Columns[i - 1].HeaderText;
}
for (int i = 0; i < this.dgvErrorByAction.Rows.Count; i++)
{
for (int j = 0; j < this.dgvErrorByAction.Columns.Count; j++)
{
_WorkSheet.Cells[i + 2, j + 1] = this.dgvErrorByAction.Rows[i].Cells[j].Value.ToString();
}
}
var _SaveFileDialog = new SaveFileDialog();
_SaveFileDialog.FileName = "ErrorList_" + Today + "_" + DateTime.Now.Hour.ToString("00") + "_" + DateTime.Now.Minute.ToString("00");
_SaveFileDialog.DefaultExt = ".xls";
if (_SaveFileDialog.ShowDialog() == DialogResult.OK)
{
_WorkBook.SaveAs(_SaveFileDialog.FileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode. xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
}
_App.Quit();