2017-06-21 49 views
1
private void LoadExcelSheet(string path, int sheet){ 
    _Application excel = new Excel.Application(); 
    Workbook wb; 
    Worksheet ws; 
    string data = ""; 
    int row = 0; 
    int col = 0; 

    wb = excel.Workbooks.Open(path); 
    ws = wb.Worksheets[sheet]; 
    listBox1.Items.Clear(); 

    for (row = 1; row < 10; row++){ 
     data = " "; 
     for (col = 1; col < 3; col++) { 
      data += ws.Cells[row, col].Value2 + " "; 
     } 

     //wanted to filter out empty cells/data and at the same time count 
     //number of items in the list... row should stop.. I think! 

     if(data == null){ 
      break; 
     } 

    listBox1.Items.Add(data); 
} 

if声明似乎不管用我做什么。如果有人能指出我正确的方向,我将非常感激。如何在填充列表框之前检查空数据输入框

+0

您可以设置数据= “”,因此它永远不会为空。请检查长度== 1。 –

+1

'data'永远不为空 - 你正在初始化它为一个空字符串。 –

+0

正如Jason提到的那样,“数据”不会为空,而是为每个检查的单元添加一个空格字符。所以除非你检查零单元,否则'data'永远不会是一个空字符串。 –

回答

0

添加一个条件这样

If(string.IsNullOrEmpty(data)) 
{ 
    Break; 
} 
1

这样使用它:

if (data.Trim().Length < 1) 
    { 
     return; 
    } 

使用returnbreak

+0

感谢$ Reds ...结果正是我一直在寻找的! –

+0

如果这解决了您的问题,然后标记为已回答。 –

+0

原谅我,但你怎么做到这一点? –