2015-06-03 27 views
1

我首先使用pandas創建了數據透視表。然後我將它保存到工作表中。然後,我使用xlwt在本工作表中編寫了一些數據&進行進一步處理。現在我正在嘗試從我之前寫過一個公式的單元格讀取值。使用xlwt將公式寫入Excel表格後,通過xlrd讀取具有公式的單元格返回空白

book = xlrd.open_workbook(fname) 
 
sheet = book.sheet_by_name('Pivot Table') 
 
print 'Spare',sheet.cell(11,10).value

此代碼工作正常和指向一個小區不具有式(依賴於其它細胞),當它返回合適的值。但帶公式的單元格不會返回任何內容

我需要一種方法來讀取單元格值。 Excel表格有很多公式寫入它,我試圖讀取的單元格是最終的單元格。所以我不想回溯過程來獲得價值(通過我的腳本計算)。

我使用Ubuntu並有LibreOffice。 (僅供參考,如果沒有直接的方式,我們需要打開excel並獲取數據)

+0

我在讀取excel文件之前插入了raw_input()。然後編輯並保存它。得到正確的細胞價值。 我正在爲我的老闆寫劇本。所以仍然需要解決。需要腳本來處理一切。 –

+0

Excel文件不包含計算它包含的任何公式所需的功能 - 這是由Excel應用程序完成的... –

+0

請提供一個示例excel文件,以便可以重現問題。 – firelynx

回答

0

這是不能做到的。

用xlwt包寫入excel後,需要打開excel並保存。打開Excel文件將使用計算的值填充包含公式的單元格。然後保存excel將這些值與公式一起保存到單元格中。

有些事情,我遵循 -

  1. 以上僅適用於在其他小區使用的值公式的單元格是真實的。如果我嘗試用'= 10 + 2'等公式讀取單元格,則返回正確的值。
  2. 打開excel後,您需要編輯/添加一些內容以啓用保存按鈕/選項。
相關問題