创build一个excel文件并自动扩展列宽
我有一个常规的HTML表格:
<table> <tr>hello</tr> <tr>world</tr> </table>
我正在创build一个XLS文件:
string randomname = @"C:\attachmentsfolder\" + System.IO.Path.GetRandomFileName() + ".xls"; System.IO.File.WriteAllText( randomname, message);
当我打开生成的XLS文件时,我需要手动扩展列以查看长数据。
我的问题是:我怎样才能生成这个XLS文件,以便列已经适当的大小?
您可以使用EPPlus (开放源代码.NET Excel 2007+库)轻松完成此任务 ,并且您将拥有一个有效的Excel文件,以下是示例代码:
public static void FitAndSaveToExcel(FileInfo excelFile, string sheetName) { ExcelPackage pack = new ExcelPackage(); ExcelWorksheet ws = pack.Workbook.Worksheets.Add(sheetName); ws.Cells[1, 1].Value = "Some Long text that needs fitting!"; ws.Cells[1, 2].Value = "Short one"; ws.Column(1).AutoFit(); pack.SaveAs(excelFile); }
在Excel VBA中,您可以使用Rng.Columns.AutoFit
实现您所寻找的效果。 我相信C#等价物是Rng.Columns.AutoFit();
。
但是,我同意Diodeus,你将不得不修复你的HTML第一。
您也可以使用第三方工具,如Aspose.Cells来创buildExcel文件。
我已经成功地在很多项目中使用了它。 它提供了您所需的自适应function。