DataGridView Excel 내보내기

7624 단어 datagridview
기록으로 쓰세요.자꾸 잊어버리는 게 안정적인 방법이에요:)
 

  
    
private void SaveExcel(DataGridView dataGridView1, string filename)
{
if (dataGridView1.Rows.Count == 0 )
return ;

Microsoft.Office.Interop.Excel.ApplicationClass _x
=
      new Microsoft.Office.Interop.Excel.ApplicationClass();
_x.UserControl
= false ;
Microsoft.Office.Interop.Excel.WorkbookClass wb
=
      (Microsoft.Office.Interop.Excel.WorkbookClass) this ._x.Workbooks.Add(System.Reflection.Missing.Value);
//
for ( int i = 0 ; i < dataGridView1.ColumnCount; i ++ )
{
_x.Cells[
1 , i + 1 ] = dataGridView1.Columns[i].HeaderText;
}

//
for ( int i = 0 ; i < dataGridView1.RowCount - 1 ; i ++ )
{
for ( int j = 0 ; j < dataGridView1.ColumnCount; j ++ )
{
if (dataGridView1[j, i].ValueType == typeof ( string ))
{
_x.Cells[i
+ 2 , j + 1 ] = " ' " + dataGridView1[j, i].Value.ToString();
}
else
{
_x.Cells[i
+ 2 , j + 1 ] = dataGridView1[j, i].Value.ToString();
}
}
}

wb.Saved
= true ;
this ._x.ActiveWorkbook.SaveCopyAs(filename);
this ._x.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject((
object )_x);
System.GC.Collect();
}

 
 

좋은 웹페이지 즐겨찾기