1         public void Export()
2 {
3 //创建工作簿对象
4 IWorkbook workbook = new XSSFWorkbook();
5
6 ExportStatistics(workbook);
7 ExportHumidifyLog(workbook);
8 ExportHumidifyEventLog(workbook);
9 ExportHandlingEventLog(workbook);
10
11 //创建流对象并设置存储Excel文件的路径
12 using (FileStream url = File.OpenWrite(@"D:\增湿数据.xlsx"))
13 {
14 //导出Excel文件
15 workbook.Write(url);
16 };
17 }
18
19 private void ExportStatistics(IWorkbook workbook)
20 {
21 //创建工作表
22 ISheet sheet = workbook.CreateSheet("增湿机与Handling统计");
23 IRow row0 = sheet.CreateRow(0);
24 row0.CreateCell(0).SetCellValue("统计项");
25 row0.CreateCell(1).SetCellValue("循环数");
26 row0.CreateCell(2).SetCellValue("实际循环时间");
27 row0.CreateCell(3).SetCellValue("理论循环时间");
28 row0.CreateCell(4).SetCellValue("运行时间");
29 row0.CreateCell(5).SetCellValue("总时间");
30 row0.CreateCell(6).SetCellValue("故障时间");
31 for (int r = 0; r < Statistics.Count; r++)
32 {
33 //创建行row
34 IRow row = sheet.CreateRow(r + 1);
35 row.CreateCell(0).SetCellValue(Statistics[r].SourceName);
36 row.CreateCell(1).SetCellValue(Statistics[r].CycleCount);
37 row.CreateCell(2).SetCellValue(Statistics[r].ActualCycleTime);
38 row.CreateCell(3).SetCellValue(Statistics[r].TheoreticalCycleTime);
39 row.CreateCell(4).SetCellValue(Statistics[r].UseTime);
40 row.CreateCell(5).SetCellValue(Statistics[r].UpTime);
41 row.CreateCell(6).SetCellValue(Statistics[r].DownTime);
42 }
43 }
44 private void ExportHumidifyLog(IWorkbook workbook)
45 {
46 //创建工作表
47 ISheet sheet = workbook.CreateSheet("增湿记录");
48 IRow row0 = sheet.CreateRow(0);
49 row0.CreateCell(0).SetCellValue("增湿穴");
50 row0.CreateCell(1).SetCellValue("程序号");
51 row0.CreateCell(2).SetCellValue("物料名称");
52 row0.CreateCell(3).SetCellValue("增湿开始时间");
53 row0.CreateCell(4).SetCellValue("增湿结束时间");
54 for (int r = 0; r < HumidifyLog.Count; r++)
55 {
56 //创建行row
57 IRow row = sheet.CreateRow(r + 1);
58 row.CreateCell(0).SetCellValue(HumidifyLog[r].ChamberID);
59 row.CreateCell(1).SetCellValue(HumidifyLog[r].HumidifyProgramNo);
60 row.CreateCell(2).SetCellValue(HumidifyLog[r].MaterialName);
61 row.CreateCell(3).SetCellValue(HumidifyLog[r].HumidifyStartTime);
62 row.CreateCell(4).SetCellValue(HumidifyLog[r].HumidifyEndTime);
63 }
64 }
65 private void ExportHumidifyEventLog(IWorkbook workbook)
66 {
67 //创建工作表
68 ISheet sheet = workbook.CreateSheet("增湿机故障统计");
69 IRow row0 = sheet.CreateRow(0);
70 row0.CreateCell(0).SetCellValue("故障ID");
71 row0.CreateCell(1).SetCellValue("故障描述");
72 row0.CreateCell(2).SetCellValue("故障开始时间");
73 row0.CreateCell(3).SetCellValue("故障结束时间");
74 for (int r = 0; r < HumidifyEventLog.Count; r++)
75 {
76 //创建行row
77 IRow row = sheet.CreateRow(r + 1);
78 row.CreateCell(0).SetCellValue(HumidifyEventLog[r].Code);
79 row.CreateCell(1).SetCellValue(HumidifyEventLog[r].Remark);
80 row.CreateCell(2).SetCellValue(HumidifyEventLog[r].StartTime);
81 row.CreateCell(3).SetCellValue(HumidifyEventLog[r].EndTime);
82 }
83 }
84 private void ExportHandlingEventLog(IWorkbook workbook)
85 {
86 //创建工作表
87 ISheet sheet = workbook.CreateSheet("Handling故障统计");
88 IRow row0 = sheet.CreateRow(0);
89 row0.CreateCell(0).SetCellValue("故障ID");
90 row0.CreateCell(1).SetCellValue("故障描述");
91 row0.CreateCell(2).SetCellValue("故障开始时间");
92 row0.CreateCell(3).SetCellValue("故障结束时间");
93 for (int r = 0; r < HandlingEventLog.Count; r++)
94 {
95 //创建行row
96 IRow row = sheet.CreateRow(r + 1);
97 row.CreateCell(0).SetCellValue(HandlingEventLog[r].Code);
98 row.CreateCell(1).SetCellValue(HandlingEventLog[r].Remark);
99 row.CreateCell(2).SetCellValue(HandlingEventLog[r].StartTime);
100 row.CreateCell(3).SetCellValue(HandlingEventLog[r].EndTime);
101 }
102 }

其中,Statistics,HumidifyLog,HumidifyEventLog,HandlingEventLog为自定义类的列表。

参考:https://www.cnblogs.com/jicheng/p/5961257.html

https://www.cnblogs.com/zqyw/category/1070314.html

C# NPOI导出数据到Excel的更多相关文章

  1. NPOI导出数据到Excel

    NPOI导出数据到Excel   前言 Asp.net操作Excel已经是老生长谈的事情了,可下面我说的这个NPOI操作Excel,应该是最好的方案了,没有之一,使用NPOI能够帮助开发者在没有安装微 ...

  2. 导出数据到Excel方法总结

    一,问题的提出 近来在网上经常有人问怎样把数据导出到Excel中?针对这个问题网上也有很多资料.大都比较的琐碎.本人当前从事的项目中,刚好涉及到这些内容.就顺便做了一些归纳整理.共享给大家.避免大家再 ...

  3. 使用npoi.dll导出数据到excel

    .net数据导出excel数据有多种方法,最常用的就是使用office组件,但随之而来的问题也很棘手,又要调权限又要确定是否安装office很是麻烦,最近一个项目中也有数据导出功能,随使用excel模 ...

  4. 导出数据到Excel --使用ExcelReport有感

    先看图,这是几个月前用NPOI写的导出数据到Excel,用了上百行代码,而且难控制,导出来也比较难看 excel打开的效果 下面是我用ExcelReport类库导出到Excel的操作 1.首先引用Ex ...

  5. MVC导出数据到EXCEL新方法:将视图或分部视图转换为HTML后再直接返回FileResult

    导出EXCEL方法总结 MVC导出数据到EXCEL的方法有很多种,常见的是: 1.采用EXCEL COM组件来动态生成XLS文件并保存到服务器上,然后转到该文件存放路径即可: 优点:可设置丰富的EXC ...

  6. 使用NPOI导出,读取EXCEL(可追加功能)

    使用NPOI导出,读取EXCEL,具有可追加功能 看代码 using System; using System.Collections.Generic; using System.Text; usin ...

  7. 一个方便且通用的导出数据到 Excel 的类库

    一个方便且通用的导出数据到 Excel 的类库 起源: 之前在做一个项目时,客户提出了许多的导出数据的需求: 导出用户信息 导出业务实体信息 各种查询都要能导出 导出的数据要和界面上看到的一致 可以分 ...

  8. 导出数据到Excel表格

    开发工具与关键技术:Visual Studio 和 ASP.NET.MVC,作者:陈鸿鹏撰写时间:2019年5月25日123下面是我们来学习的导出数据到Excel表格的总结首先在视图层写导出数据的点击 ...

  9. 1.ASP.NET MVC使用EPPlus,导出数据到Excel中

    好久没写博客了,今天特地来更新一下,今天我们要学习的是如何导出数据到Excel文件中,这里我使用的是免费开源的Epplus组件. 源代码下载:https://github.com/caofangshe ...

随机推荐

  1. 开发升讯威在线客服系统启示录:怎样编写堪比 MSDN 的用户手册

    本系列文章详细介绍使用 .net core 和 WPF 开发 升讯威在线客服与营销系统 的过程. 免费在线使用 & 免费私有化部署:https://kf.shengxunwei.com 文章目 ...

  2. 【以太坊剖析】以太坊虚拟机(EVM)之基本定义

    以太坊虚拟机(EVM) 以太坊虚拟机(Ethereum Virtual Machine,简称EVM)是一个基于栈的虚拟机,基于特定的环境数据,执行一系列的字节代码形式的指令,以修改系统状态.EVM目前 ...

  3. 布客&#183;ApacheCN 编程/大数据/数据科学/人工智能学习资源 2020.1

    公告 我们正在招募项目负责人,完成三次贡献可以申请,请联系片刻(529815144).几十个项目等你来申请和参与,不装逼的朋友,我们都不想认识. 薅资本主义羊毛的 CDNDrive 计划正式启动! 我 ...

  4. Atcoder ARC-125

    写的详细的就是我不会做的... A 显然至多有一次移动距离 \(> 1\) 只需判断这个位置在哪里即可. 复杂度 \(\mathcal{O}(n)\). B 令 \(x ^ 2 - y = z ...

  5. 在CentOS 6.x/7.x上安装git

    方式一.yum安装 # yum info git Failed to set locale, defaulting to C Loaded plugins: fastestmirror Loading ...

  6. 自定义 RestTemplate 异常处理 (转)

    转自:https://ethendev.github.io/2018/11/06/RestTemplate-error-handler/ 一些 API 的报错信息通过 Response 的 body返 ...

  7. 在CentOS中安装与配置Server JRE 8

    感谢大佬:https://my.oschina.net/zx0211/blog/508221?p=1 其实也很简单: 1.从http://www.oracle.com/technetwork/java ...

  8. PHP中 die,die(),exit,exit(),return,return() 的区别

    die:是遇到错误才停止die():停止程序运行,输出内容exit:是停止程序运行,是直接停止,并且不运行后续代码,不输出内容exit():可以显示内容.exit(0):正常运行程序并退出程序:exi ...

  9. spring property标签中的 ref属性和ref 标签有什么不同

    spring的配置文件可能会有多个<property name="a" ref="b" />就是找当前配置文件里的bean 也就是b <ref ...

  10. 微服务与SpiringBoot

    微服务: 微服务是一种架构风格,一般说到微服务都会说"微服务架构",即一个系统的各个功能(如结账,用户等)独立出来,以及各个服务独立出来,每个模块是可独立替换.可独立升级的软件单元 ...