c# 用NPOI能否直接复制整个excel的某个sheet到另外一个excel中 求给段代码 100

 我来答
百度网友115a69b
2013-08-08 · TA获得超过253个赞
知道小有建树答主
回答量:428
采纳率:50%
帮助的人:384万
展开全部

好吧,我有一段代码,你可参考下.

 int sheetCount = dt.Rows.Count % 50000 == 0 ? dt.Rows.Count / 50000 : dt.Rows.Count / 50000 + 1;
            ISheet sheet = null;
            IRow row = null;
            ICell cell = null;
            for (int i = 0; i != sheetCount; i++)
            {
                sheet = book.CreateSheet(string.Format("RCList{0}", i + 1));
                row = sheet.GetRow(0) ?? sheet.CreateRow(0);
                for (int k = 0; k != dt.Columns.Count; k++)
                {
                    cell = row.GetCell(k) ?? row.CreateCell(k);
                    cell.SetCellValue(dt.Columns[k].ColumnName);
                }
            }


            for (int i = 0; i != dt.Rows.Count; i++)
            {
                sheet = book.GetSheetAt(i / 50000);
                row = sheet.GetRow(i - (i / 50000) * 50000 + 1) ?? sheet.CreateRow(i - (i / 50000) * 50000 + 1);
                for (int k = 0; k != dt.Columns.Count; k++)
                {
                    cell = row.GetCell(k) ?? row.CreateCell(k);

                    if (dt.Rows[i][k] != DBNull.Value)
                    {
                        cell.SetCellValue(dt.Rows[i][k].ToString());
                    }
                }
            }

一般思路是打开已存的Excel,复制里面的架构到另一个Excel的新Sheet,然后复制数据过去.

如果是全部复制一个新的Excel的话,可以考虑直接使用            System.IO.File.Copy方法.


自已再慢慢摸索一下吧 

yayu_001
2013-08-08
知道答主
回答量:1
采纳率:0%
帮助的人:1473
展开全部
直接复制粘贴就可以了啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式