开发者

How to set the sheet name for a C# generated Excel spreadsheet?

We generate an Excel spreadsheet in our C# .net website by writing out an HTML table to Response. This works great, but the sheet name gets set to the sam开发者_StackOverflow中文版e as the file name.

Is there away to set this? We require a certain sheet name when importing.

Code:

string filename = String.Format( "{0}-CopyDataBack_{1}.xls", Master.EventID.ToString(), DateTime.Now.ToString( "dd-MM-yy_HHmm" ) );

Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("content-disposition", "attachment;filename=" + filename );
Response.Charset = "";
this.EnableViewState = false;

System.Text.StringBuilder tableOut = new System.Text.StringBuilder();
// ... Create an HTML table in a StringBuilder ...
Response.Write( tableOut );
Response.End();


By creating a table and setting content-type to Excel you can't define a worksheet name, nor to create more worksheets.

You can to generate your complete Excel workbook by using OpenXML SDK, but your client will need to handle Office 2007 file formats by using Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜