C# EXCEL 匯入欄位空白

C# EXCEL 匯入欄位空白

在EXCEL匯入程式中,

我通常會利用某欄位來當做key值,

若此欄位為空白,

就當做EXCEL的結束列。

 

但是如果匯入時又要判斷不同欄位是否為空白(空值),

這就爆了,程式就會出錯,

在試過許多檢查的方式都不成功,

錯就是錯在要判斷是否空白的那行程式碼,

忍無可忍,

直接用「try-catch」,

待有時間來發揮研究精神後,再處理此問題。

(如果各位看官有好的解去,我們會很感激的~~~ XD)


if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                _spath = openFileDialog1.FileName;
                _path = _spath;
                app = new Microsoft.Office.Interop.Excel.ApplicationClass();
                workBook = app.Workbooks.Open(_path, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
                workSheet = (Microsoft.Office.Interop.Excel.Worksheet)workBook.ActiveSheet;         //ActiveSheet目前使用的sheet

                while (((Microsoft.Office.Interop.Excel.Range)workSheet.Cells[_rowindex, "主key"]).Value2.ToString() != "")
                {
                    System.Windows.Forms.Application.DoEvents();
                    try
                    {
                        
                            if(((Microsoft.Office.Interop.Excel.Range)workSheet.Cells[_rowindex,"副key"]).Value2.ToString()!=""); //就是這行錯誤
                          
                        }                        
                        _rowindex = _rowindex + 1;
                        if (((Microsoft.Office.Interop.Excel.Range)workSheet.Cells[_rowindex, 1]).Value2 == null)
                        {
                            app.Quit();
                            break;
                        }
                    }
                    catch
                    {
                        _rowindex = _rowindex + 1;
                        if (((Microsoft.Office.Interop.Excel.Range)workSheet.Cells[_rowindex, 1]).Value2 == null)
                        {
                            app.Quit();
                            break;
                        }
                    }

                }
            }
            MessageBox.Show("完成");

 

自我LV~