导出Excel的问题 我想做到点击一个按钮,然后导出N个Excel文件,请问怎么才能做到?不需要导出一个文件,分N个sheet的那种。有答案马上结贴!谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可以每一个文件放在一个iframe里面输出,否则你只能下载一个。或者打包成一个下载 例子<%@ Page Language="C#" EnableViewState="true" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><script runat="server"> protected void Button1_Click(object sender, EventArgs e) { for (int i = 0; i < 6; i++) { Literal1.Text += "<iframe style='display:none' src='exportExcel.aspx?file=" + i.ToString() + ".xls'></iframe>"; } }</script><body> <form id="form1" runat="server"> <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="导出6个文件" /> <asp:Literal ID="Literal1" runat="server"></asp:Literal> </form></body>每个exportExcel.aspx导出单个文件,这个就不用写了吧 ASP.NET office组件可以做到。 我正好做了这么一个功能,逻辑代码我就不贴出来了,下面贴下主要操作excel的代码: Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();//这个就是最主要的excel类,分页都是从这个类的子类Workbook workbook = xlApp.Workbooks.Add(XlSheetType.xlWorksheet); worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Sheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);//worksheet就是页,你需要分多少页就执行多少次这句.逻辑你自己写,比如说你现在需要10页,那一开始New一个excel类,然后得到workbook,然后写个循环if(int i=0;i<10;i++){ worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Sheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);//这里分页就可以了}最后导出就是操作excel类的代码 xlApp.Application.ActiveWorkbook.SaveCopyAs(excel的文件名); 貌似这个做法在firefox下可以,但是IE9就不行,还是只弹出一个保存提示 DATASET容器更新问题 asp.net 页面 在执行过程中 会卡住 FileUpload上床图片,怎么判断这是不是一个图片类型 二个gridview嵌套合并单元格 附加到SqlServer2005(VS.NET2005)中的数据库,被改写了,无法再在2000中使用 DIV布局,结果让TT的屏蔽浮动元素吧整个页面屏蔽干净了,求解决办法 《〈〈〈treeview的问题〉〉〉》》 为什么我的history.back()老出问题? net网战上传的问题 关于MVC使用枚举,把数据库字段转换成自己想要显示的值 【100分悬赏】高手请进! 新手询问一个很简单的问题。
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < 6; i++)
{
Literal1.Text += "<iframe style='display:none' src='exportExcel.aspx?file=" + i.ToString() + ".xls'></iframe>";
}
}
</script>
<body>
<form id="form1" runat="server">
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="导出6个文件" />
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
</form>
</body>每个exportExcel.aspx导出单个文件,这个就不用写了吧
Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();//这个就是最主要的excel类,分页都是从这个类的子类
Workbook workbook = xlApp.Workbooks.Add(XlSheetType.xlWorksheet);
worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Sheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);//worksheet就是页,你需要分多少页就执行多少次这句.
逻辑你自己写,比如说你现在需要10页,那一开始New一个excel类,然后得到workbook,然后写个循环
if(int i=0;i<10;i++)
{
worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Sheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);//这里分页就可以了
}
最后导出就是操作excel类的代码
xlApp.Application.ActiveWorkbook.SaveCopyAs(excel的文件名);