1

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

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

问题是,如果一个单元格为空,它会跳过该单元格并且永远不会进入分配给它的 Case。我怎样才能让它不跳过空白单元格?

4

1 回答 1

2

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

我们可以很容易地通过语句检查集合的包含worksheet.Cells(8, 2, lastRow, lastCol).Count()。它返回非空白单元格的数量。该集合不包含所有单元格,因此for each循环无法帮助您满足您的需求。

我想从for eachfor循环转换。对不起 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
    }
}
于 2012-12-03T13:06:37.587 回答