我没有看到使用EPPlus在现有的Excel文件中插入一行的方法。我知道InsertRow函数,但是这不会在最后插入行 - 类似于sql中的insert语句。如果这是不可能的,我将如何找到excel文件中最后一次使用的行。在Excel中使用EPPlus插入一行
1
A
回答
1
这是一种使用EPPlus在Excel工作表中查找表格中最后一个单元格的方法。
private ExcelRange GetLastContiguousCell(ExcelRange beginCell)
{
var worksheet = beginCell.Worksheet;
var beginCellAddress = new ExcelCellAddress(beginCell.Start.Row, beginCell.Start.Column);
var lastCellAddress = worksheet.Dimension.End;
var bottomCell = worksheet.Cells[beginCellAddress.Row, beginCellAddress.Column, lastCellAddress.Row, beginCellAddress.Column]
.First(cell => cell.Offset(1, 0).Value == null);
var rightCell = worksheet.Cells[beginCellAddress.Row, beginCellAddress.Column, beginCellAddress.Row, lastCellAddress.Column]
.First(cell => cell.Offset(0, 1).Value == null);
return worksheet.Cells[bottomCell.Start.Row, rightCell.Start.Column];
}
但是,一个重要的提示是假定第一行和第一列没有间隔。我在第一行用于列标题(不能为空)并且第一列是主要的Id
列(也不能为空)的情况下使用此方法。如果你的情况与此不同,你将不得不调整方法,但希望它仍然有帮助。
编辑
它只是发生,我认为你可能只能够使用worksheet.Dimension.End
没有所有的其他代码。我使用这种更复杂的方法,因为我有时会在工作表中添加除表格外的其他信息,而且我不希望将其包含在计算中。
1
使用下面的代码
worksheet.Dimension.End.Row
这应该给上次使用的行信息。
相关问题
- 1. epplus从行插入
- 2. 无法使用EPPlus将数据从Datagridview插入Excel中#
- 3. 如何在EPPlus中一次插入一行
- 4. _x00D_使用EPPlus库在Excel中显示?
- 5. 如何在Excel中使用VBA每24行插入一行?
- 6. 使用EPPlus打开Excel
- 7. 使用EPPlus读取Excel spreasheet
- 8. GridView到Excel使用EPPlus
- 9. 在VBA中插入行Excel
- 10. 在excel中插入行
- 11. 在EPPlus中编写一个Excel文件
- 12. 在EPPLUS RichText中插入文本
- 13. 如何在Excel文件中使用PHP插入一行?
- 14. 如何使用EPPLus库在Excel中清除行?
- 15. EPplus要插入空白行数
- 16. 插入第一行Excel
- 17. 如何在Excel表中使用Microsoft.Ace.Oledb在Excel 2012中使用Microsoft.Ace.Oledb插入新行#
- 18. 在excel中通过epplus调用公式
- 19. 使用epplus根据值查找excel中的行号和最后一行数
- 20. 在Wordpress中使用wpdb插入一行
- 21. 如何在c中插入一行并格式化一行Excel#
- 22. 使用Python在excel中插入对象
- 23. 如何使用epplus遍历Excel表中的行?
- 24. 用EPPLUS Excel Library格式化一列
- 25. 使用C的Excel行插入#
- 26. 使用AddPicture时出现EPPlus Excel错误
- 27. 使用EPPlus复制/克隆Excel形状?
- 28. 使用EPPlus打开Excel文档
- 29. 使用EPPLUS隐藏Excel网格线
- 30. 使用EPPlus格式化Excel工作簿