 |
|
จะเคลียร์ Gridview หรือ textbox ตัวอื่นๆหลังจากกดปุ่ม open , save หรือ cancel popup excel ที่ขึ้นมายังไงครับ มันจับคอนโทรลไม่ได้
Code
protected void exportExcel(DataTable dt)
{
StringBuilder sb = new StringBuilder();
sb.AppendFormat("<HTML xmlns:x=\"urn:schemas-microsoft-com:office:excel\" charset=\"utf-8\">");
sb.AppendFormat("<HEAD><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">");
sb.AppendFormat(@"
<style></style>
<!--[if gte mso 9]><xml>
<x:ExcelWorkbook>
<x:ExcelWorksheets>
<x:ExcelWorksheet>
<x:Name>Sheet1</x:Name>
<x:WorksheetOptions>
<x:Print>
<x:ValidPrinterInfo/>
</x:Print>
</x:WorksheetOptions>
</x:ExcelWorksheet>
</x:ExcelWorksheets>
</x:ExcelWorkbook>
</xml><![endif]-->
</HEAD>
");
sb.AppendFormat("<BODY><TABLE BORDERCOLOR='#000000'>");
sb.AppendFormat("<TR>");
sb.AppendFormat("<TD>");
sb.AppendFormat("{0}", "Planner Profile:");
sb.AppendFormat("</TD>");
sb.AppendFormat("<TD>{0}</TD>", "ZCMG");
sb.AppendFormat("</TR>");
sb.AppendFormat("<TR>");
sb.AppendFormat("<TD>{0}</TD>", "Version:");
sb.AppendFormat("<TD>{0}</TD>", v_Version);
sb.AppendFormat("</TR>");
sb.AppendFormat("<TR>");
sb.AppendFormat("<TD>{0}</TD>", "Period From:");
sb.AppendFormat("<TD>{0}</TD>", "1 TO 12");
sb.AppendFormat("</TR>");
sb.AppendFormat("<TR>");
sb.AppendFormat("<TD>{0}</TD>", "Fiscal Year:");
sb.AppendFormat("<TD>{0}</TD>", v_Year);
sb.AppendFormat("</TR>");
sb.AppendFormat("<TR>");
sb.AppendFormat("<TD>{0}</TD>", "Company Code:");
sb.AppendFormat("<TD>{0}</TD>", v_Company);
sb.AppendFormat("</TR>");
sb.AppendFormat("<TR>");
sb.AppendFormat("</TR>");
int iCol = 0;
sb.AppendFormat("<TR>");
for (int i = 22; i < 39; i++)
{
iCol++;
sb.AppendFormat("<TD STYLE='background-color:#C0C0C0;font-weight:bold;text-align:center;height: 25px;'>{0}</TD>", dt.Columns[i].ColumnName.ToString().Substring(24));
}
sb.AppendFormat("</TR>");
int iRow = 0;
int rowError = 0;
foreach (DataRow dr in dt.Rows)
{
iRow++;
iCol = 0;
sb.AppendFormat("<TR>");
for (int i = 22; i < 39; i++)
{
iCol++;
sb.AppendFormat("<TD>{0}</TD>", dr[i].ToString());
if (i == 38)
{
if (dr[i].ToString() != "")
{
if (dr[i].ToString().Substring(0, 7) != "Warning")
{ rowError++; }
}
}
}
sb.AppendFormat("</TR>");
}
int rCount = dt.Rows.Count - 1;
sb.AppendFormat("<TR>");
sb.AppendFormat("<TD>{0}</TD>", "Total value:");
sb.AppendFormat("<TD>{0}</TD>", dt.Rows[rCount]["O_TOTAL_VALUE"].ToString());
sb.AppendFormat("</TR>");
sb.AppendFormat("<TR>");
sb.AppendFormat("<TD>{0}</TD>", "Total record:");
sb.AppendFormat("<TD>{0}</TD>", dt.Rows.Count - 1);
sb.AppendFormat("</TR>");
sb.AppendFormat("<TR>");
sb.AppendFormat("<TD>{0}</TD>", "Total error:");
sb.AppendFormat("<TD>{0}</TD>", rowError);
sb.AppendFormat("</TR>");
sb.AppendFormat("</TABLE>");
sb.AppendFormat("</BODY>");
sb.AppendFormat("</HTML>");
Response.Clear();
Response.Buffer = true;
Response.Write(sb);
Response.ContentType = "application/vnd.msexcel";
Response.AppendHeader("Content-Disposition", "attachment; filename=ProfitUpload" + Convert.ToString(DateTime.Now.ToString("dd/MM/yyyy")) + ".xls");
Response.End();
}
Tag : .NET, Ms SQL Server 2005, HTML/CSS, Excel (Excel.Application), C#
|
|
 |
 |
 |
 |
Date :
2012-01-31 10:45:42 |
By :
vigoss |
View :
1125 |
Reply :
2 |
|
 |
 |
 |
 |
|
|
|
 |