c# - c# 生成带有图表模板的excel表格
问题描述
下午好,
我有一个 .net API,它将接收来自客户端的请求以生成 Excel 工作表。到目前为止,一切都很好。我收到请求,查询数据库,获取数据,并将其写入 Excel 工作簿中的工作表。
这实际上是我正在努力解决的 excel 部分。我想要一个预制的 Excel 表,其中包含引用尚不存在的表的图表。这张表将根据要求编写。我事先不知道会有多少行,所以这必须动态调整。我似乎无法弄清楚如何创建图表并让它指向尚不存在的数据。
举个简单的例子,c# 程序将编写以下代码:
汽车品牌 | 全部的 本田 12 道奇 24 宝马 6
这将写在第二张纸上,第一张纸上是一个条形图,现在可以很好地显示这些数据。目的是在c#程序写入数据后,我可以关闭流,并将excel表返回给客户端。当他们最终查看它时,第一张表将有一个填充图表。
解决方案
我更习惯于 VBA,但我认为您正在寻找的内容在这里进行了解释:
http://csharp.net-informations.com/excel/csharp-excel-chart.htm
代码生成 Excel 工作表后,它会添加一些数据,然后通过以硬编码方式检索数据来创建图表对象。如果您知道从哪里开始复制第二页上的值,并且数据是连续的,那么您可以像这里一样使用range.end到最后,并将其放入位于第一张表中的图表中。因此,图表不会等待指向动态创建的列表,而是在填充列表后创建(预制,但在您的代码中)。如果是一列字符串和一列数字的问题,我觉得这种方法可能比较方便。
推荐阅读
- java - 如何为 JsonObjects 的 JsonObject 创建 Jackson XML POJO 类
- javascript - 根据用户选择的值,将 20 个不同的静态值乘以 12,然后显示总数
- ruby - 嵌套数组将内部数组打印到空字符串中 - Ruby
- c# - 服务器经常丢失 Azure SignalR 连接
- python - 在 Pyomo 中设置不初始化
- java - Java 进程没有正常关闭
- laravel-dusk - 使用 Laravel Dusk 模拟键(无输入元素)
- scala - ZKTestingUtility 的 Hbase 测试实用程序依赖问题
- bash - 循环遍历带有空格的文件名 Bash 使用变量
- opengl - glGenBuffers 与 glGenTextures