所用环境信息:vs2010 mvc3 linq
npoihelper帮助类。
public class npoihelper
// datatable导出到excel文件。
// 源datatable
// 表头文本。
// 保存位置。
public static void export(datatabledtsource, string strheadertext, string strfilename, string columnnames)
using (memorystreamms = export(dtsource, strheadertext, columnnames))
using (filestreamfs = new filestream(strfilename,
byte data =
// datatable导出到excel的memorystream
// 源datatable
// 表头文本。
// 列名。
public static memorystream export(datatabledtsource, string strheadertext, string columnnames)
if (columnnames !=null &&
throw new argumentexception("参数不正确:columnnames,数组元素的个数需要和数据源列的数量相同!")
hssfworkbook workbook = new hssfworkbook();
sheet sheet =
#region 右击文件属性信息。
documentsummaryinformationdsi =
= "上海驰亚防伪科技****";
= dsi;
summaryinformationsi =
= "技术部";
= strheadertext;
= si;#endregion
cellstyledatestyle =
dataformat format =
= "yyyy-mm-dd");
/取得列宽。
int arrcolwidth = new int[
foreach (datacolumn item in
arrcolwidth[ =
for (int i = 0; i < i++)
for (int j = 0; j < j++)
intinttemp =
if (inttemp>arrcolwidth[j])
arrcolwidth[j] =inttemp;
introwindex = 0;
foreach (datarow row in
#region 新建表,填充表头,填充列头,样式。
if (rowindex ==65535 ||rowindex ==0)
if (rowindex !=0)
sheet =
#region 表头及样式。
row headerrow =
cellstyleheadstyle =
font font =
= headstyle;
cellrangeaddress(0, 0, 0, -1));
#endregion
#region 列头及样式。
row headerrow =
cellstyleheadstyle =
font font =
if (columnnames ==null)
foreach (datacolumn column in
= headstyle;
/设置列宽。
(arrcolwidth[ +1) *256);
elseforeach (datacolumn column in
= headstyle;
/设置列宽。
(arrcolwidth[ +1) *256);
#endregion
rowindex = 2;
#endregion
#region 填充内容。
row datarow =
foreach (datacolumn column in
cell newcell =
stringdrvalue = row[column].tostring();
switch (
case ""字符串类型。
break;
case ""日期类型。
datetimedatev;
out datev);
= datestyle;//格式化显示。
break;
case ""布尔型。
boolboolv = false;
out boolv);
break;
case ""整型。
case ""
case ""
case ""
intintv = 0;
out intv);
break;
case ""浮点型。
case ""
double doubv = 0;
out doubv);
break;
case ""空值处理。
break;
default:
break;
#endregion
rowindex++;
using (memorystreamms = new memorystream())
一般只用写这一个就ok了,他会遍历并释放所有资源,但当前版本有问题所以只释放sheet
return ms;
// 用于web导出。
// 源datatable
// 表头文本。
// 文件名。
public static void exportbyweb(datatabledtsource, string strheadertext, string strfilename, string columnnames)
httpcontextcurcontext =
/ 设置编码和附件格式。
= "application/";
content-disposition",attachment;filename="
Excel导出函数
sub exporttoexcel application content disposition attachment filename call writetabledata end sub excel导入数据库。dim filename filename 取得文件名,来自项目经理的指定,路径固...
3初识Excel
2019年度申报评审高级教师讲课教案。初识excel2003 八年级信息技术上册 讲课教师 张发和 工作单位 永靖八中 讲课时间 2019年9月28日。教学目标 知识目标 1 使学生了解excel2003的功能,掌握它的启动和退出方法。2 使学生感性认识excel2003的窗口基本组成部分。3 使学...
Excel上机作业 3
1.使用excel单变量求解工具确定盈亏平衡点 具体如下图所示,其。中总成本 固定成本 单位可变成本 产量,总收入 单位售价 产量,总利润 总收入 总成本 图12.应用excel规划求解工具求解下面问题。某工厂生产两种产品a b。由于这两种产品具有不同的大小 形状 重量和风格,所以它们所需要的主要原...