【问题标题】:how to write data more than one excel sheet如何在一张以上的excel表中写入数据
【发布时间】:2010-08-09 03:17:19
【问题描述】:

我有 3 个数据表。我需要将这三个数据表数据写入 Excel 表中。 正如我们所知,在一张 excel 表下我可以拥有(超过 1 张)。

以同样的方式,我需要将我的 3 个数据表数据写入一个 excel(其中 sheet1 将包含 dattable1,sheet2 将包含 dattable2,sheet3 将包含 dattable3)

这是我用于将数据表数据写入网格然后写入 excel 的代码

private void DataTableToExcel(DataTable dtResult)
        {
            try
            {
                DataGrid grid = new DataGrid();
                grid.HeaderStyle.Font.Bold = true;
                grid.DataSource = dtResult;
                grid.DataBind();
                // render the DataGrid control to a file
                using (StreamWriter sw = new StreamWriter(Server.MapPath("Report/Report.xls")))
                {
                    using (HtmlTextWriter hw = new HtmlTextWriter(sw))
                    {
                        grid.RenderControl(hw);
                    }
                }
                string filePath = Server.MapPath("~/" + "Report" + "/" + "Report.xls");
                System.IO.FileInfo targetFile = new System.IO.FileInfo(filePath);
                if (targetFile.Exists)
                {
                    Response.Clear();
                    string shortDate = DateTime.Now.ToShortDateString();
                    // Response.AddHeader("Content-Disposition", "attachment; filename=" + "Test");
                    Response.AddHeader("Content-Disposition", "attachment; filename=" + "Emp" + shortDate + ".xls");
                    Response.AddHeader("Content-Length", targetFile.Length.ToString());
                    Response.ContentType = "application/vnd.ms-excel";
                    Response.WriteFile(targetFile.FullName);
                }
            }
            catch (Exception ex)
            {
                WriteLogError(ex.Message);
            }
        }

对此问题的任何帮助将不胜感激。 谢谢。

【问题讨论】:

    标签: c# excel datatable asp.net-3.5


    【解决方案1】:

    您可以使用 C# 的 NPOI 来实现此目的。真的很容易使用。

    看看这些链接:

    Create Excel (.XLS and .XLSX) file from C#

    Creating Excel spreadsheets .XLS and .XLSX in C#

    您可以通过以下方式引用工作簿中的每个工作表:

     // Getting the worksheet by its name...
     HSSFSheet sheet = templateWorkbook.GetSheet("Sheet1");
    

    【讨论】:

      猜你喜欢
      • 2019-03-23
      • 2018-07-08
      • 2020-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多