首页 新闻 会员 周边

C#怎么填充数据到excel模板中

0
悬赏园豆:200 [已解决问题] 解决于 2021-08-04 14:27

如上面两张图,第一张图是模板,现在需要根据SQL拉出来的数据,把数据填充进去,得到第二张图的结果,下面是SQL:SELECT MO.MOCODE AS 工单,
QC2.ITEMCODE AS 项目编码,
CU.CUSTOMERNAME AS 客户,
MO.INPUTQTY AS 检查数量,
QC1.ITEMCODE AS 检查项目编码,
QC1.ITEMNAME AS 检查项目名称,
QC1.LIMITLOW AS 下限值,
QC1.LIMITHIGH AS 上限值,
QC1.QCVALUE AS 实测值,
CASE WHEN QC1.RESULT='0' THEN '不合格' ELSE '合格' END AS 检查结果,
QC1.CREATIONTIME AS 检查时间
FROM QC_FLQC_SAMPLE_D QC1
INNER JOIN QC_FLQC_H QC2
ON QC2.ID = QC1.FLQCID
INNER JOIN PRD_MO MO
ON QC2.MOCODE = MO.MOCODE
AND QC2.ITEMCODE = MO.ITEMCODE
INNER JOIN BAS_CUSTOMER CU
ON MO.CUSTOMERCODE = CU.CUSTOMERCODE
WHERE QC2.PROCESSCODE IN ('MAN001', 'MAN002')
AND mo.mocode='106K23X-1' AND qc1.itemcode NOT LIKE '%构造%'

请问大佬们,怎么写最好

还有,当工单不同时,尺寸的检验项目也可能会变多,也就是当有QA检查尺寸013,014...是,如下图,会有一个尺寸附加页(另一个excel模板),需要把第一个模板填不下的填到第二个模板中,这又该怎么写

有没有大手子给一个Demo啊,新手小白想破头了叶不知道该怎么做
自己想过先把结果导出到datagridview再填充进去,或者直接用语句一个一个填充,好像都不好,不知道怎么样最好,拜托了。给个Demo把

30岁学编程的主页 30岁学编程 | 初学一级 | 园豆:5
提问于:2021-06-28 14:49
< >
分享
最佳答案
0

最好的办法:
1 将数据写到一个隐藏sheet页中
2 将隐藏sheet页中的数据引用到前面的展示页

好处:
1 写数据只需要把固定数据写到固定sheet的固定位置
2 修改前面的展示只需要修改excel模板展示页引用

收获园豆:200
猝不及防 | 老鸟四级 |园豆:2781 | 2021-06-29 10:20

大佬,这样的话速度会不会有点慢

30岁学编程 | 园豆:5 (初学一级) | 2021-06-30 08:21

@30岁学编程:
不会,
代码层面都是用代码写一次数据,
显示引用是excel在打开时候自己做的事情

猝不及防 | 园豆:2781 (老鸟四级) | 2021-06-30 11:27

@猝不及防: 如何调用excel模板,再向sheet中填入数据。大佬能给个Demo参考一下吗,小白一个

30岁学编程 | 园豆:5 (初学一级) | 2021-07-01 14:56

@30岁学编程:
你建两个sheet,sheet1,sheet2
在sheet1上的某个单元格,按=号,
然后鼠标点击sheet2的某个单元格,按回车,
此时
sheet1的某个单元格就显示了sheet2的某个单元格。

猝不及防 | 园豆:2781 (老鸟四级) | 2021-07-01 14:58

@猝不及防: 这个excel我会哦,大佬我说的是用C#程序调用excel然后往里面添数据,能给个Demo让我雪学学吗

30岁学编程 | 园豆:5 (初学一级) | 2021-07-01 15:37

@30岁学编程: 百度一下npoi

猝不及防 | 园豆:2781 (老鸟四级) | 2021-07-01 15:53
其他回答(4)
0

Aspose.Cells应该可以实现这个效果你可以百度百度

华临天下 | 园豆:1501 (小虾三级) | 2021-06-29 09:27
0

可以后excel文件里面要填的空格用标签标记 如$userName$,然后把excel文件存成xml格式,然后用C#替换这些标签为真实的值 保存excel就可以了。

为乐而来 | 园豆:1432 (小虾三级) | 2021-06-30 13:21
0

可以用Free Spire.XLS的smart marker功能,实现基于Excel模板生成Excel文档
参考文档:https://www.e-iceblue.com/Tutorials/Spire.XLS/Spire.XLS-Program-Guide/Marker-Designer.html

ms_doudou | 园豆:1166 (小虾三级) | 2021-07-05 09:26
0

自己用了最笨的办法,从数据库中拉数据填充到每个对应的单元格中

30岁学编程 | 园豆:5 (初学一级) | 2021-08-04 14:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册