使用c#从excel文件中删除行

l--*_*''' 5 .net c# excel

我正在打开这样的excel文件:

Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
Excel.Range range;

string str;
int rCnt = 0;
int cCnt = 0;

xlApp = new Excel.ApplicationClass();
xlWorkBook = xlApp.Workbooks.Open("csharp.net-informations.xls", 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
Run Code Online (Sandbox Code Playgroud)

我想知道:
如何遍历所有行并删除字符串SomeString未出现的每一行column A

我知道如何遍历每个值:

for (rCnt = 1; rCnt <= range.Rows.Count; rCnt++)
{
    for (cCnt = 1; cCnt <= range.Columns.Count; cCnt++)
    {
        str = (string)(range.Cells[rCnt, cCnt] as Excel.Range).Value2;
        MessageBox.Show(str);
    }
}
Run Code Online (Sandbox Code Playgroud)

但我不知道如何删除整行

Mir*_*Ion 16

一旦你有对工作表的引用说

for(int i = 1; i <=100; i++)
{
  if(!worksheet.Cells[i,1].Contains("SomeString"))
  {
     ((Range)worksheet.Rows[i]).Delete(shiftDirection)
  }
}
Run Code Online (Sandbox Code Playgroud)

其中shiftDirection在这里看到:Range.Delete方法

您可能必须将Cell的内容强制转换为字符串.