C# EPPlus 从 excel sheet 中删除行
C# EPPlus delete row from excel sheet
我目前正在处理一个 Excel 文件,该文件的前导行包含我不需要的信息。这些额外的行还会干扰在下面的 header 行中导入该数据。所以我试图删除它们以处理数据。
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 sheet 中删除行的技巧或资源(在将其移入数据表之前,因为那是问题发生的地方)
您拥有的代码将删除前 5 行,但您还需要对修改后的文件执行一些操作。您可以将其保存到位:
pack.Save();
或保存到新位置:
pack.SaveAs(new FileInfo(outputFilePath));
我已经上传了一个完整的例子here:
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 行,所有内容都向上移动了。
我目前正在处理一个 Excel 文件,该文件的前导行包含我不需要的信息。这些额外的行还会干扰在下面的 header 行中导入该数据。所以我试图删除它们以处理数据。
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 sheet 中删除行的技巧或资源(在将其移入数据表之前,因为那是问题发生的地方)
您拥有的代码将删除前 5 行,但您还需要对修改后的文件执行一些操作。您可以将其保存到位:
pack.Save();
或保存到新位置:
pack.SaveAs(new FileInfo(outputFilePath));
我已经上传了一个完整的例子here:
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 行,所有内容都向上移动了。