//Excel模板导数据(Eexcel中根据DataTable中的个数,给多个Sheet中的模板赋值)
public void DataSetToManyExcel(string fileName, string fileUrl, Page page, DataSet my_ds, Dictionary<string, string> dict = null)
{
WorkbookDesigner wbookdesiger = new WorkbookDesigner();
wbookdesiger.Open(fileUrl); //打开模板
try
{
if (my_ds.Tables.Count > )
{
for (var i = ; i < my_ds.Tables.Count; i++)
{
//设置DataTable
wbookdesiger.SetDataSource(my_ds.Tables[i]);
//设置变量
if (dict != null)
{
foreach (var di in dict)
wbookdesiger.SetDataSource(di.Key, di.Value);
}
wbookdesiger.Process(i, false);
//清除数据源
wbookdesiger.ClearDataSource();
}
fileName = System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8) + ".xls";
wbookdesiger.Save(fileName, SaveType.OpenInExcel, FileFormatType.Excel2003, page.Response);
page.Response.End();
}
}
catch (Exception ex)
{
throw ex;
}
} //Excel模板导数据(Eexcel中根据DataTable中的个数,复制第一个Sheet中的模板,然后分别赋值)
public void DataSetToOneExcel(string fileName, string fileUrl, Page page, DataSet my_ds, string tabName = "", Dictionary<int, string> my_dic = null)
{ WorkbookDesigner my_designer = new WorkbookDesigner();
my_designer.Open(fileUrl);//打开文件
Workbook my_workbook = my_designer.Workbook;
try
{
if (my_ds.Tables.Count > )
{
//给表格赋值
for (var i = ; i < my_ds.Tables.Count; i++)
{
var temp = i + >= my_ds.Tables.Count ? i : i + ; //TableName
if (i == )
my_ds.Tables[i].TableName = tabName != "" ? tabName : "dt";
else
my_ds.Tables[temp].TableName = tabName != "" ? tabName + i : "dt" + temp; my_workbook.Worksheets.AddCopy();//复制前一个Sheet模板
my_workbook.Worksheets[i + ].Replace(my_ds.Tables[].TableName, my_ds.Tables[temp].TableName);//替换当前Sheet的下个Sheet的TableName my_designer.SetDataSource(my_ds.Tables[i]);
my_designer.Process(i, false);
my_designer.ClearDataSource();
} //删除最后一个sheet
my_workbook.Worksheets.RemoveAt(my_workbook.Worksheets.Count - ); //给Sheet的Name赋值
if (my_dic != null)
{
for (var i = ; i < my_workbook.Worksheets.Count; i++)
{
foreach (var dd in my_dic)
{
if (i == dd.Key)
my_workbook.Worksheets[i].Name = dd.Value;
}
}
} fileName = System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8) + ".xls";
my_designer.Save(fileName, SaveType.OpenInExcel, FileFormatType.Excel2003, page.Response);
page.Response.End();
}
}
catch (Exception ex)
{
throw ex;
}
}

Aspose.cell中的Excel模板导出数据的更多相关文章

  1. kettle 使用excel模板导出数据

    通过excel进行高速开发报表: 建设思路: 1.首先制订相关的execl模板. 2.通过etl工具(kettle)能够高速的 将数据库中的数据按excel模板导出成新的excel就可以. 当中ket ...

  2. Net 自定义Excel模板导出数据

    转载自:http://www.cnblogs.com/jbps/p/3549671.html?utm_source=tuicool&utm_medium=referral 1 using Sy ...

  3. C# Winform Excel的导出,根据excel模板导出数据

    namespace dxhbskymDemo { public partial class ExcelForm : DevExpress.XtraEditors.XtraForm { public E ...

  4. ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 try.dot.net 的正确使用姿势 .Net NPOI 根据excel模板导出excel、直接生成excel .Net NPOI 上传excel文件、提交后台获取excel里的数据

    ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案   ASP.NET Core 从2.2版本开始,采用了一个新的名为Endpoint的路由方案,与原来的方案在使用上差别不 ...

  5. .Net NPOI 根据excel模板导出excel、直接生成excel

    一.根据Excel模板导出excel 1.导入NPOI.dll  2.DAL中添加类ExportExcel.cs using NPOI.SS.UserModel; using System; usin ...

  6. Magicodes.IE之Excel模板导出教材订购表

    说明 本教程主要说明如果使用Magicodes.IE.Excel完成教材订购表的Excel模板导出. 要点 本教程使用Magicodes.IE.Excel来完成Excel模板导出 需要通过创建Dto来 ...

  7. 用NPOI从DataTable到Excel,向Excel模板填充数据

    DataTable---->Excel,填充数据 private IWorkbook workbook = null; private ISheet sheet = null; private ...

  8. Excel模板导出之动态导出

    说明 目前Magicodes.IE已支持Excel模板导出时使用JObject.Dictionary和ExpandoObject来进行动态导出,具体使用请看本篇教程. 本功能的想法.部分实现初步源于a ...

  9. java实现excel模板导出

    一. 准备工作 1. 点击此下载相关开发工具 2. 将poi-3.8.jxls-core-1.0两个jar包放到工程中,并引用 3. 将excel模板runRecord.xls放到RunRecordB ...

随机推荐

  1. 15.5.2 【Task实现细节】骨架方法的结构

    尽管骨架方法中的代码非常简单,但它暗示了状态机的职责.代码清单15-11生成的骨架方 法如下所示: [DebuggerStepThrough] [AsyncStateMachine(typeof(De ...

  2. Problem 16

    Problem 16 pow(2, 15) = 32768 and the sum of its digits is 3 + 2 + 7 + 6 + 8 = 26.2的15次方等于32768,而这些数 ...

  3. 编码GBK和GB2312、Unicode、UTF-8

    一.编码GBK和GB2312 随着计算机发展,各国已经不满足于单纯用ASCII码: 对于我们来说能在计算机中显示中文字符是至关重要的,所以我们还需要一张关于中文和数字对应的关系表: 一个字节8位二进制 ...

  4. Bootstrap关于表单控件(Radio,CheckBox)

    表单控件(复选框checkbox和单选择按钮radio) Bootstrap框架中checkbox和radio有点特殊,Bootstrap针对他们做了一些特殊化处理,主要是checkbox和radio ...

  5. 洛谷 P3819 松江1843路

    题目描述 涞坊路是一条长L米的道路,道路上的坐标范围从0到L,路上有N座房子,第i座房子建在坐标为x[i]的地方,其中住了r[i]人. 松江1843路公交车要在这条路上建一个公交站,市政府希望让最多的 ...

  6. Timus - 1209 - 1, 10, 100, 1000...

    先上题目: 1209. 1, 10, 100, 1000... Time limit: 1.0 secondMemory limit: 64 MB Let's consider an infinite ...

  7. 【ACM】hdu_zs1_1005_大明A+B _201307291603

    大明A+B Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other)Total Submissi ...

  8. 洛谷 P3252 [JLOI2012]树

    P3252 [JLOI2012]树 题目描述 在这个问题中,给定一个值S和一棵树.在树的每个节点有一个正整数,问有多少条路径的节点总和达到S.路径中节点的深度必须是升序的.假设节点1是根节点,根的深度 ...

  9. WebApplicationContext初始化(转)

    ApplicationContext是Spring的核心,Context我们通常解释为上下文环境,我想用“容器”来表述它更容易理解一些,ApplicationContext则是“应用的容器”了:在We ...

  10. configure: error: XML configuration could not be found

    运行: ./configure --prefix=/usr/local/php --enable-fastcgi --enable-fpm 之后出现 Running FastCGI Process M ...