我目前正在使用一个Excel文件,该文件的前几行包含不需要的信息。这些多余的行也将数据导入下面的标题行中。因此,我正在尝试删除它们以处理数据。
using (var pack = new ExcelPackage(myFileInfo))
{
// Should return the sheet name
var ws = pack.Workbook.Worksheets.FirstOrDefault();
// Should Delete rows 1-5 and shift up the rows after deletion
ws.DeleteRow(1,5,true);
}
我当时以为上面的方法会起作用,但是我并没有取得太大的成功。
目标是删除第1-5行,上移其余数据(也许可以进行合并?),然后将其转换为数据表。
任何人都有从我的excel表格中删除行的技巧或资源(在将其移到数据表之前,因为这是发生问题的地方)
您所拥有的代码将删除前5行,但您还需要对修改后的文件进行操作。您可以使用以下方法将其保存到位:
pack.Save();
或使用以下方法保存到新位置:
pack.SaveAs(new FileInfo(outputFilePath));
我在这里上传了完整的示例:
static void Main(string[] args)
{
var myFileInfo = new FileInfo("Demo.xlsx");
using (var pack = new ExcelPackage(myFileInfo))
{
var ws = pack.Workbook.Worksheets.FirstOrDefault();
ws.DeleteRow(1, 5, true);
pack.SaveAs(new FileInfo("output.xlsx"));
}
}
如果构建并运行该解决方案,则可以看到它从输入文件(Demo.xlsx)中转换了演示文件:
在输出文件中:
删除了前5行,一切都向上移动了。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句