如何检查单元格是否为空 (Excel\VisualC#)

Dan*_*ele 5 c# excel cell

我的目标是检查每行中的行,Sheet1以便发现有多少行,所以我放了一个 do\while ,一旦到达空白单元格就应该停止

例子:

行 1 数据
行 2 数据
行 3 数据
行 4 数据
行 5 数据

第 6 行数据
第 7 行数据

在本例中,我只需要前 5 行,因此 do\while 检查旨在在到达空白单元格后停止。这种情况不会发生,因为检查不会循环(它在完成一个循环后停止,就像它找到一个空白单元格,即使它填充了数据)。

string str;
int rCnt = 11; //the data I need is after the 10th row in excel
int cCnt = 1;
int valori = 1;

Excel.Application xlApp = new Excel.Application();
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(label4.Text, 0, false, 5, "", "", 
                                                 false, Excel.XlPlatform.xlWindows, 
                                                 "", true, false, 0, true, false, 
                                                 false);
Excel.Sheets xlsheet = xlWorkbook.Worksheets;
string sheet1 = "Sheet1";
Excel.Worksheet xlWorksheet = (Excel.Worksheet)xlsheet.get_Item(sheet1);
Excel.Range xlCell;   

do
{
    rCnt++;
    str = "A" + rCnt;
    xlCell = (Excel.Range)xlWorksheet.get_Range(str, str);
} while (xlCell.Value2 == null);
    
Run Code Online (Sandbox Code Playgroud)

我尝试更改Value2ValueorText并尝试设置 == "" 而不是 null。

mat*_*one 4

如果您希望循环在到达空白单元格时停止,那么..尝试更改

while (xlCell.Value2 == null);
Run Code Online (Sandbox Code Playgroud)

while (! IsNull(xlCell.Value2));
Run Code Online (Sandbox Code Playgroud)