如何删除除C#中的标题外的Excel电子表格中的所有行?如何删除Excel中除C#以外的所有行(除标题外)
我试图做到这一点使用Microsoft.Office.Interop.Excel;
库
我现在有这样的代码
Range xlRange = ws.UsedRange;
int rows = xlRange.Rows.Count;
Console.WriteLine(rows);
for (int i = 2; i <= rows; i++)
{
((Range)ws.Rows[i]).Delete(XlDeleteShiftDirection.xlShiftUp);
}
但它不删除所有的行,我想是因为它删除行,当它击中了一定该行不再存在的编号,我做错了什么?
我设法做到这一点,我已经从底部而非顶部开始,所以现在我的循环是
for (int i = rows; i != 1; i--)
{
((Range)ws.Rows[i]).Delete(XlDeleteShiftDirection.xlShiftUp);
}
解决方案
var range = (Range)ws.Range[ws.Cells[2, 1], ws.Cells[ws.UsedRange.Rows.Count, ws.UsedRange.Columns.Count]];
range.Delete(XlDeleteShiftDirection.xlShiftUp);
曾有过在V4的变化的.net,使用get_Range
停止工作
你有什么你试过了吗?你打算使用特定的图书馆还是办公自动化? – dlatikay
这取决于您选择访问Excel文件数据的方法。 –
我已编辑我的问题,以显示我想要使用的库 – Ollie2619