excel能输出html格式文档的有,html的table导出excel文件

本文提供了一种将DataTable及IEnumerable数据类型导出至Excel的方法。通过使用Microsoft.Office.Interop.Excel库,介绍了如何设置数据的位置、是否包含列名及排除特定列等功能。此方法适用于批量数据处理场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#region"DataTable导出EXECL"publicstaticvoidEnumToExel(Microsoft.Office.Interop.Excel.Worksheet wsheet, DataTable data)

{

EnumToExel(wsheet, data,1,1,false,null);

}publicstaticvoidEnumToExel(Microsoft.Office.Interop.Excel.Worksheet wsheet, DataTable data,inttop,intleft)

{

EnumToExel(wsheet, data, top, left,false,null);

}publicstaticvoidEnumToExel(Microsoft.Office.Interop.Excel.Worksheet wsheet, DataTable data,inttop,intleft,boolIsHaveCoulumn)

{

EnumToExel(wsheet, data, top, left, IsHaveCoulumn,null);

}publicstaticvoidEnumToExel(Microsoft.Office.Interop.Excel.Worksheet wsheet, DataTable data,inttop,intleft,boolIsHaveCoulumn,string[] removeCoulumn)

{if(removeCoulumn!=null)

{foreach(stringproinremoveCoulumn)

{intnCount=data.Columns.Count;for(inti=0; i

{stringcoulumn=data.Columns[i].ColumnName.ToUpper();if(coulumn==pro.ToUpper())

data.Columns.Remove(data.Columns[i]);

}

}

}intnTop=top;intnLeft=left;if(IsHaveCoulumn)

{foreach(DataColumn infoindata.Columns)

{

wsheet.Cells[nTop, nLeft]=info.ColumnName;

nLeft++;

}

nTop++;

}foreach(DataRow tindata.Rows)

{

nLeft=left;foreach(DataColumn infoindata.Columns)

{

wsheet.Cells[nTop, nLeft]=t[info];

nLeft++;

}

nTop++;

}

}#endregion#region"IEnumerable导出EXECL"publicstaticvoidEnumToExel(Microsoft.Office.Interop.Excel.Worksheet wsheet, IEnumerabledata)

{

EnumToExel(wsheet, data,1,1,false,null);

}publicstaticvoidEnumToExel(Microsoft.Office.Interop.Excel.Worksheet wsheet, IEnumerabledata,inttop,intleft)

{

EnumToExel(wsheet, data, top, left,false,null);

}publicstaticvoidEnumToExel(Microsoft.Office.Interop.Excel.Worksheet wsheet, IEnumerabledata,inttop,intleft,boolIsHaveCoulumn)

{

EnumToExel(wsheet, data, top, left, IsHaveCoulumn,null);

}publicstaticvoidEnumToExel(Microsoft.Office.Interop.Excel.Worksheet wsheet, IEnumerabledata,inttop,intleft,boolIsHaveCoulumn,string[] removeProperty)

{

Listps=typeof(T).GetProperties().ToList();if(removeProperty!=null)

{foreach(stringproinremoveProperty)

{

ps.Remove(ps.FirstOrDefault(p=>p.Name.ToUpper()==pro.ToUpper()));

}

}intnTop=top;intnLeft=left;if(IsHaveCoulumn)

{foreach(PropertyInfo infoinps)

{

wsheet.Cells[nTop, nLeft]=info.Name;

nLeft++;

}

nTop++;

}foreach(T tindata)

{

nLeft=left;foreach(PropertyInfo infoinps)

{

wsheet.Cells[nTop, nLeft]=info.GetValue(t,null);

nLeft++;

}

nTop++;

}

}#endregion""

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值