我的目标是逐行检查Sheet1
为了发现有多少行,所以我放了一个 do\while ,一旦到达空白单元格就应该停止
Example:
第 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);
我尝试改变Value2
to Value
or Text
并尝试设置 == "" 而不是 null。