更新3/23/16
在最新版本的PR请求中
openpyxl(2.3版及更高版本),此问题已得到解决。
这是
openpyxl(bug报告)的已知缺点。简短的答案是,当您上下拖动公式时,Excel将使用“共享公式”,而不能解析
openpyxl。如果您确实需要此功能,则可能需要尝试
xlrd。
编辑:
这让我很烦,所以这是一个非常骇人的解决方法(在python
2.7上测试)。首先,您必须从此处获得Robin
Macharg的Excel公式解析器。将其保存在Python路径中的某个位置
xlparse.py。现在,从这个要点运行代码,您应该能够使用该
get_formula函数获取任何单元格的公式。在大多数情况下,该函数仅返回
cell.value,但是只要该函数遇到共享公式,它就会给出正确的值。
注意:
的monkeypatch
openpyxl.reader.worksheet.Worksheet是,因此
openpyxl.load_workbook使用我们的修补类。确保在调用之前运行此代码
load_workbook。如果要以其他方式创建工作簿,则必须
Worksheet在适当的位置打补丁。



