2016-05-27 285 views
2

我正在使用openpyxl從excel文件讀取。我正在嘗試讀取其值由公式計算的單元格。Openpyxl讀取公式結果(Python 2.7)

定期讀取功能返回式腳本:

`wb= openpyxl.load_workbook('forecast.xlsx')` 
`sheet = wb.get_sheet_by_name('Sheet3')` 
`result=sheet["F6"].value` 

我試圖用(DATA_ONLY =真)標誌是這樣的:

wb= openpyxl.load_workbook('forecast.xlsx', data_only=True)

結果是,所有式細胞轉向空白。只剩下純粹的價值。

有沒有辦法使用openpyxl讀取單元計算值?

更新:

從進一步閱讀我懷疑的問題是關於重新打開一個已經用openpyxl修改的文件。一旦我打開一個原始文件,我使用'data_only'標誌得到值。一旦修改後重新開放,公式單元格變爲空白。

試圖通過使用2個文件來解決這個問題 - 目前爲止沒有取得太大的成功。

有人有這方面的解決方案?

+0

解決方案是什麼?你可以有計算值**或**公式。如果你使用純數據模式,則不會覆蓋原始文件。 –

回答

1
wb = openpyxl.load_workbook('forecast.xlsx', data_only=True) 

將讀取實際值。 (從你發佈的內容來看,我認爲你錯過了一個逗號分隔論點)

+1

逗號是在acutal代碼(編輯帖子以及)。從進一步閱讀我懷疑這個問題是關於重新打開已經用openpyxl修改過的文件。一旦我打開一個orignal文件,我就會得到這些值。一旦重新開放,配方細胞變爲空白。 –