export dataGrid to excel in asp.net

Berikut ini adalah cara untuk mengubah dari dataGrid (Grid View) ke bentuk format excel pada asp.net (doTnYet),

misalkan kita mempunyai bentuk seperti ini (datagrid nya)

how to export datagrid to excel

kita pengen jadiin langsung di excel, seperti ini

how to export datagrid to excel

cukup simpel sebenarnya, cukup menambahkan sorce code seperti dibawah ini


protected void btn_print_Click(object sender, EventArgs e)
{
DataTable dtOriginal = new DataTable();
dtOriginal = KeuanganAccess.getSPPPembayaranFilter(fungsi, tahun_pelajaran, kelas, bulan); //Return Table consisting data

//Create Tempory Table
DataTable dtTemp = new DataTable();

//Creating Header Row
dtTemp.Columns.Add("<b>No</b>");
dtTemp.Columns.Add("<b>NIS</b>");
dtTemp.Columns.Add("<b>Nama</b>");
dtTemp.Columns.Add("<b>Jumlah</b>");
double dSalary;
DateTime dtDate;
DataRow drAddItem;
for (int i = 0; i < dtOriginal.Rows.Count; i++)
{
drAddItem = dtTemp.NewRow();
drAddItem[0] = i+1; //no
drAddItem[1] = dtOriginal.Rows[i][0].ToString();//nis
drAddItem[2] = dtOriginal.Rows[i][1].ToString();//nama
drAddItem[3] = dtOriginal.Rows[i][2].ToString();//jumlah
dtTemp.Rows.Add(drAddItem);
}

//Temp Grid
DataGrid dg = new DataGrid();
dg.DataSource = dtTemp;
dg.DataBind();
ExportToExcel("report.xls", dg);
dg = null;
dg.Dispose();

}

private void ExportToExcel(string strFileName, DataGrid dg)
{
Response.ClearContent();
Response.AddHeader("content-disposition", "attachment; filename=" + strFileName);
Response.ContentType = "application/excel";
System.IO.StringWriter sw = new System.IO.StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
dg.RenderControl(htw);
Response.Write(sw.ToString());
Response.End();
}

selamat belajar asp.net

One Response to “export dataGrid to excel in asp.net”

  1. muttaqin  on December 10th, 2009

    aku lihat codenya kayaknya sihhh pake C klo pake vb gimana ???


Leave a Reply