2013-03-07 41 views
0

我在* .xls文件中有一些值,但是當我嘗試使用wb_sheet.col_values(...)導入它們時,我只能得到空值。我試過wb_sheet.col(...),它也聲稱那些單元格是空的。但是,他們不是,我可以在Excel中看到這些值。xlrd檢測單元爲空,但它們不是空的

我的* .xls文件是由Labview腳本生成的,我非常肯定它包含一些makros和東西。但是,xlrd不會返回錯誤。

我會上傳樣本表,但它包含機密信息。

版本: python 2.7.3,Windows 7,Excel 2010,xlrd 0.8.0。

小腳本:

wb = open_workbook('*.xls') 
wbs = wb.sheet_by_index(0) 
wbs.col(0) 

結果我得到的是空:「」,所有細胞,即使第一列包含的值,當我用Excel中打開。

+0

請編輯你的問題,以便它包含:哪個版本的Python,哪個版本的操作系統,哪個版本的Excel,哪個版本的xlrd,小腳本,顯示你正在做什麼以及什麼「它聲稱那些單元格爲空「表示您在Excel中查看的列,如果您使用Excel打開文件,然後」另存爲「file2.xls並在file2.xls上使用xlrd,問題是否會消失。 – 2013-03-07 19:43:14

+0

當然,如果你認爲這有助於任何事情。 – user2145054 2013-03-08 13:11:03

回答

0

期望值:xlrd報告文件中的內容。如果在打開文件時由Excel執行「makros and stuff」時插入缺失的數據值,則需要在其他地方 - see this previous question

+0

謝謝。像往常一樣使用Excel,宏在開始時被取消激活(我收到安全警告),所以當打開腳本時,不允許執行任何代碼。 但是,xlrd可以檢測某些單元格內容。看起來好像excel文件是通過使用模板宏和填充測量值的宏創建的。 xlrd從模板宏返回數據,但不返回測量值。有趣的是,如果我更改包含模板數據的單元格並重新保存它,我仍然會在xlrd中獲取原始模板數據。 – user2145054 2013-03-08 13:07:07