我们如何使用 ClosedXML 在 Excel 中创建图表

Jun*_*aid 5 excel c#-3.0 c#-4.0 asp.net-mvc-3 closedxml

如何在Excel中创建图表,同时将数据从数据库导出到Excel工作表..!

我正在将数据从数据库导出到 Excel。我需要根据数据库中的数据在 Excel 工作表中创建图表。下面的代码创建了简单的 Excel 工作表,我需要在相同的代码中进行更改才能创建图表。请指导

    public ActionResult ExportToExcel()
    {

            var workbook = new ClosedXML.Excel.XLWorkbook();
            var worksheet = workbook.Worksheets.Add("SheetOne");
            DocumentFormat.OpenXml.Drawing.PictureLocks piclocks = new DocumentFormat.OpenXml.Drawing.PictureLocks();
            worksheet.Cell("A1").Value = "Test data!";
            Response.ClearContent();
            Response.Buffer = true;
            Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
            Response.AddHeader("content-disposition", "attachment;filename=\"SheetOne.xlsx\"");
            System.IO.MemoryStream memoryStream = new System.IO.MemoryStream();
           workbook.SaveAs(memoryStream);
            memoryStream.WriteTo(Response.OutputStream);
            memoryStream.Close();
            Response.End();
            return File(memoryStream, "application/ms-excel", "PPs_Workflow.xlsx");

    } *
Run Code Online (Sandbox Code Playgroud)

dhu*_*hes 6

不幸的是,据我所知,ClosedXML 不支持添加图表。

因此,为了完成您的需要,您需要创建一个 Excel 文件(用作模板)并手动添加您需要的图表。之后,您可以使用 ClosedXML 打开并编辑现有文件(而不是像当前那样创建新文件)。当数据更新时,图表也会自动更新。