对于工作表中的每个循环通过单元格而不使用EPPlus跳过空白

时间:2012-11-29 18:30:21

标签: vb.net excel epplus

我目前有这样的代码块......

For Each cell In worksheet.Cells(8, 2, lastRow, lastCol)
    Select Case cell.Start.Column
        Case Is = 2
            'Do stuff
    End Select
Next

问题是,如果一个单元格是空的,它会跳过该单元格,并且永远不会进入它所分配的Case。如何让它不跳过空格?

1 个答案:

答案 0 :(得分:2)

我认为这不是EPPlus的问题。那件事有助于减少存储在文件中的数据。

我们可以通过声明worksheet.Cells(8, 2, lastRow, lastCol).Count()轻松检查集合的包含。它返回非空单元格的数量。该集合不包含所有单元格,因此for each循环可以帮助您实现所需。

我想从for each转换为双for循环。对不起C#代码因为我不了解VB :(

for (int i = 8; i <= lastRow; i++)
{
    for (int j = 2; j <= lastCol; j++)
    {
        cell = worksheet.Cells[i, j];

        // Inside for each loop contents...
        Select Case cell.Start.Column
            Case Is = 2
                'Do stuff
        End Select
    }
}