我正在使用这段代码:
ExcelPackage pck = new ExcelPackage(newFile);
var wk = pck.Workbook.Worksheets.SingleOrDefault(x => x.Name == "Content");
pck.Workbook.Worksheets.Delete(wk);
但在删除中它给了我“IndexOutOfRangeException”,但我试图从对象中删除,我尝试按索引“1”删除,我只有两个工作表和相同的异常。文件和工作表不为空,但是当我以任何方式执行删除时,我收到“IndexOutOfRangeException”。
发生了什么?
注意:我也从 ExcelPackage 创建了此工作表,现在我想删除它。
看起来您遇到了一些临时错误/问题,但已修复。从 EpPlus 4.0.1.1 开始,以下代码可以正常工作:
var workbookFileInfo = new FileInfo(@"Workbook.xlsx");
using (var excelPackage = new ExcelPackage(workbookFileInfo))
{
    excelPackage.Workbook.Worksheets.Add("Worksheet1");
    excelPackage.Workbook.Worksheets.Add("Worksheet2");
    excelPackage.Save();
}
using (var excelPackage = new ExcelPackage(workbookFileInfo))
{
    var worksheet = excelPackage.Workbook.Worksheets.SingleOrDefault(x => x.Name == "Worksheet1");
    excelPackage.Workbook.Worksheets.Delete(worksheet);
    excelPackage.Save();
}
尝试更新到 EpPlus 的最新可用稳定版本,如果对您没有帮助,请发布适用于最新版本的其他详细信息。
| 归档时间: | 
 | 
| 查看次数: | 14595 次 | 
| 最近记录: |