Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于基于公式的电子表格的最佳Python API?_Python_Python 3.x_Python 2.7 - Fatal编程技术网

用于基于公式的电子表格的最佳Python API?

用于基于公式的电子表格的最佳Python API?,python,python-3.x,python-2.7,Python,Python 3.x,Python 2.7,我的要求是通过在某些单元格中输入值,从电子表格(.xlsx)中提取数据 在输入值时,其他公式单元格必须具有基于表中嵌入的公式的计算值 假设我在单元格A和B中输入值。C是一个公式单元格=a+B 所以需要得到C和其他公式单元格中的值 已经用Python3编写了以下代码 import openpyxl as op new_excel = op.load_workbook('WorkBook1.xlsx',read_only=False) spreadsheet = new_excel .get_she

我的要求是通过在某些单元格中输入值,从电子表格(.xlsx)中提取数据

在输入值时,其他公式单元格必须具有基于表中嵌入的公式的计算值

假设我在单元格A和B中输入值。C是一个公式单元格=a+B

所以需要得到C和其他公式单元格中的值

已经用Python3编写了以下代码

import openpyxl as op
new_excel = op.load_workbook('WorkBook1.xlsx',read_only=False)
spreadsheet = new_excel .get_sheet_by_name('Input Quote')
spreadsheet['B30'] = 'VAU'
spreadsheet['D30'] = 1000
spreadsheet['F30'] = 5000

new_excel.save('WorkBook2.xlsx')#saving in a new file as I need to maintain versions

loa_excel1 = op.load_workbook('WorkBook2.xlsx',data_only='TRUE')#Opening the new file
spreadsheet1 = loa_excel1.get_sheet_by_name('Input Quote')
print(spreadsheet1['J13'].value)
# Output is None
J13是一个公式单元格,它依赖于B30、D30和F30(输入值)


我们如何在Python 3中实现这一点?

我使用了openpyxl。我觉得它很强大。如果您熟悉VBA,您将看到openpyxl使用的语法和函数之间有很多相似之处。还有下降(但不是很好)文档。您也可以使用pip安装来安装openpyxl

您是否有在openpyxl中编写值和获取公式单元格值的示例代码?我试过了,但没用。值为“无”。虽然我在输入值后保存的excel文件中有公式单元格计算值。