NPOI导出为Excel文件

1.添加引用

2.将ExcelRender.cs和SqlHelper.cs两个类拷贝到App_Code文件夹下

3.写后台代码

  eg:根据部门和日期导出成绩表

 1 /// <summary>
 2     /// 点击导出Excel
 3     /// </summary>
 4     /// <param name="sender"></param>
 5     /// <param name="e"></param>
 6     protected void Button1_Click(object sender, EventArgs e)
 7     {
 8         if (txtStart.Text != "" && TextBox2.Text != "")
 9         {
10             DataTable table = new DataTable();
11             table.Columns.Add("工号", typeof(string));
12             table.Columns.Add("姓名", typeof(string));
13             table.Columns.Add("分数", typeof(string));
14             table.Columns.Add("考试时间", typeof(string));
15             table.Columns.Add("科目", typeof(string));
16
17             List<Score> list = new List<Score>();
18             //按时间导出
19             DateTime d1 = Convert.ToDateTime(txtStart.Text);
20             DateTime d2 = Convert.ToDateTime(TextBox2.Text);
21             //按部门导出
22             var qStu = _Context.Student.Where(p => p.SBranch.ToString() == TreeView1.SelectedValue);
23             if (qStu.Count() > 0)
24             {
25                 for (int i = 0; i < qStu.Count(); i++)
26                 {
27                     var qSc = _Context.Score.Where(p=>p.SNum == qStu.ToList()[i].SNum);
28                     if (qSc.Count() > 0)
29                     {
30                         foreach (Score sc in qSc)
31                         {
32                             list.Add(sc);
33                         }
34                     }
35                 }
36             }
37
38             List<Score> result = new List<Score>();
39             var q = _Context.Score.Where(p => p.DateExam >= d1 && p.DateExam <= d2);
40             if (q.Count() > 0)
41             {
42                 if (TreeView1.SelectedValue == null || TreeView1.SelectedValue == "")
43                 {
44                     result = q.ToList();
45                 }
46                 else
47                 {
48                     //考试时间与部门的交集
49                     result = list.Intersect(q.ToList()).ToList();
50                 }
51                 for (int i = 0; i < result.Count; i++)
52                 {
53                     string a = result[i].SNum;
54                     //Thread.Sleep(1);
55                     string b = result[i].SName;
56                     //Thread.Sleep(1);
57                     string c = result[i].Scores;
58                     //Thread.Sleep(1);
59                     string d = result[i].DateExam.ToString();
60                     //Thread.Sleep(1);
61                     string e1 = result[i].SCourse;
62                     //Thread.Sleep(1);
63                     table.Rows.Add(a, b, c, d, e1);
64                 }
65                 string filename = "Mark" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".xls";//准备保存的文件名
66                 ExcelRender.RenderToExcel(table, Context, filename);
67             }
68         }
69     }

导出成绩Excel

附件为demo:http://pan.baidu.com/s/1gdEhWCb

时间: 2025-01-04 22:18:17

NPOI导出为Excel文件的相关文章

DataTable导出到Excel文件

调用方法: ExcelHelper.Export(dtTemp, "供应商App", DlgSave.FileName, "物料文档" , new string[10] { "MatterCode", "MatterName", "MatterType", "MainUnit", "TagModelName", "LotName", "F

数据导出至Excel文件--好库编程网http://code1.okbase.net/codefile/SerializeHelper.cs_2012122018724_118.htm

using System; using System.IO; using System.Data; using System.Collections; using System.Data.OleDb; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; /// <summary> /// Excel操作类 /// </summary> /// Microsoft Excel 11.0 Obj

Qt中将QTableView中的数据导出为Excel文件

如果你在做一个报表类的程序,可能将内容导出为Excel文件是一项必须的功能.之前使用MFC的时候我就写过一个类,用于将grid中的数据导出为Excel文件.在使用了QtSql模块后,我很容易的将这个类改写应用在Qt程序中.类的名字叫“ExportExcelObject”.使用起来很简单: [cpp] view plaincopy // 1. declare an object // – fileName Excel 文件路径 // – sheetName Excel 工作表(sheet)名称 /

C#创建Excel文件并将数据导出到Excel文件

C#创建Excel文件,这里实际上是从资源中提取一个事先创建好的Excel文件,文件提取成功后,使用OleDb方法连接Excel,向Excel文件中写入数据. 创建解决方案 菜单>新建>项目>Windows窗体应用程序: 添加相关组件: 添加两个DataGridView,一个TextBox,两个按钮 ,如下图: 添加Excel资源: 先在文件夹中新建一个Excel文件,在Sheet1表的第一行设置列名: 双击"Resources.resx"文件打开资源文件视图: 添加

使用原生php将数据库数据导出到excel文件中

最近在工作中遇到一个需求,需要将数据库中的数据导出到excel文件中,并下载excel文件.因为以前没做过,所以就百度了一下, 网上说的大多是使用PHPExcel类来操作excel文件,这还要去下载这个类才能使用,而我只想使用原生的php,不想那么麻烦,好在 也有网友说到关于原生php生成excel文件的方法,其实很简单,下面把我结合网上资料自己实践的代码分享一下. 一般我们这种导数据的操作都是通过用户在网页页面上点击某个按钮触发相应js方法,然后请求php接口来实现的,所以主要有两种 方法来完

JavaScript将网页表格数据导出为Excel文件

不使用服务器端的技术,直接使用js将网页中的表格数据导出为excel文件,支持所有浏览器:前提条件是:网页中的表格数据必须使用table标签排版且不能有任何错误. <!DOCTYPE HTML> <html> <head> <title>javascript exportExcel</title> </head> <body> <table id="name" border="1&quo

Reporting services导出的Excel文件避免出现隐藏行列的布局

开发Reporting services时,为了避免在导出的Excel文件中出现隐藏的行和列,必须遵循以下规则: 1.Page header中的Textbox直接必须紧密贴合在一起 2.Page header中的Textbox宽度必须和Body中的Textbox宽度一致 3.Page Header中的所有控件和Body之间不允许存在空隙 4.Page Header最上面控件的location必须是0cm 5.Body中布局控件(如:table,matrix,rectangle==)的宽度应该和r

JS 将页面上的表格导出为 Excel 文件

如果在页面上展示了一个表格,想把这个表格导出为Excel文件,那么在要求不高的情况下,可以直接利用 JavaScript 的 Blob 和 Object URL 特性将表格导出.不过,这就是利用了 Excel 能打开 HTML 文档的特性,所以导出的表格实际上是一个 HTML 文档,并且其扩展名只能为 .xls,而不能是 .xlsx,否则Excel无法打开.(有使用JavaScript生成真正Excel文件的方案,以后再研究.) 实例: <!DOCTYPE html> <html>

PHPExcel数据导出到Excel文件

/** * 数据导出到Excel文件 * * @param object $data 要导出的数据内容 * @param object $headArr 设置Excel的头名称 * @param string $fileName 导出的文件名称 * @param string $width 设置单元格的宽度 * * @throws PHPExcel_Exception 异常控制 * @throws PHPExcel_Reader_Exception 控制Excel加载时的异常 * @throws