送办公室小姐姐:c#让Excel自动化,合并多个Excel

送办公室小姐姐:c#让Excel自动化,合并多个Excel

如果,李小姐要把统计好的1-12月份的excel表格放进一个文件里。但12个月的表格是12个excel文件。同时12个excel文件里又有3个sheet。 若手工操作,要合并一起就是有36个sheet要手工操作。同时要保证不失误。

应用如下一小段C#代码,瞬间解决李小姐的麻烦。

文件最后附2分钟妙懂视频。


完整代码:

//保存结果的Excel的workbook , 取名 mwk

XSSFWorkbook mwk = new XSSFWorkbook();

//合并该文件夹里所有Excel

DirectoryInfo dinfo = new DirectoryInfo(@”H:临时文件 estEXCEL”);
int fn = 1;
foreach (FileInfo f in dinfo.GetFiles(“*.xlsx”))

{

//所有Excel都有workbook形式打开

XSSFWorkbook openXLS = new XSSFWorkbook(f.FullName);

//打开后,复制里面的sheet到 复制到 mwk 中

for (int i = 0; i < openXLS.NumberOfSheets; i++)
{
XSSFSheet tmpSheet = openXLS.GetSheetAt(i) as XSSFSheet;
mpSheet.CopyTo(mwk, fn.ToString() + tmpSheet.SheetName, true, true);
}
fn++;
openXLS.Close();
}
//定义新结果 mwk 另存为 本地的硬盘目录
FileStream strm = new FileStream(@”H:临时文件 estEXCEL合并结果.xlsx”,
FileMode.CreateNew,
FileAccess.Write,
FileShare.Write
);
mwk.Write(strm); //向硬盘目录保存
MessageBox.Show(“合并完成”);

2分钟演示上述代码: 视频演示

免费提供源码,可私信索取。


作者:白客不是黑客


往期文章:

「创业工具2」微软开源CMS,开公司创业怎么用?

「创业工具」微软开源CMS,开公司想创业用它就对了

Excel自动化,助你减少加班

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
恐龙的头像 - 鹿快
评论 共2条

请登录后发表评论