close
現在的企業工作,不論你是從是什麼職務,用Excel已經是基本技能
這對於IT人員來講,就會接到一些要存Excel內的資料啊~ 諸如此類的需求~
最近就是User在丟Excel到系統的時候,發出了找不到Sheet1_ 的錯誤
「Microsoft Jet 資料庫引擎無法找到 'Sheet1$_' 物件。請確定物件…」
哭邀,打開Excel沒有這個工作表,完全沒有。
只有一個Sheet1乖乖在裡面,這看起來很一般命名的工作表,IT這邊上傳程式沒有問題..
目標就放在Excel本身上面了!
認真來抓這隻蟲…
先full scan掃到的Table,我們可能會這樣寫
DataTable dtTable = objExcelConnection.GetSchema("Tables");
此時可以從dtTable抓到取得的Excel Sheet Names
抓到Sheet1, Sheet1_
真的抓出這個隱藏?看不見的工作表了..
第一個Sheet1是個很一般的工作表,但Sheet1_ 到底是如何來的?
原來,經過篩選過後的工作表,Excel會自動幫我產生一個看不見的工作表Sheet1_
但是即使取消了篩選,仍然會存在這個工作表
所以程式上仍然要防
ex: if( sheetname.EndsWith("_") ) //do nothing or else do something
不過你可以透過刪除Sheet1會一併刪掉隱藏的Sheet1_工作表。
收工。
全站熱搜