Python excel集成,#VALUE错误
我有一个集成Python和Excel的工作程序(感谢xlwt)。 我正在阅读一个CSV文件,并复制到一个Excel。 虽然我这样做,我也有几个公式,包括在xlwt中使用公式模块。 具体来说,代码是
ws_xlwt.write(3,3, Formula("MMULT(MINVERSE(C11:D12),"+col_char+"2:"+col_char+"3)"), style)
col_char是在循环中生成的ASCII码。 数组(C11:D12)包含使用代码生成的数据:
ws_xlwt.write(10,2, Formula("SUMPRODUCT($C$36:$C$161,$C$36:$C$161)"), style)
程序运行时,它将公式正确放置在特定的单元格中。 但单元格显示错误“#VALUE”,而不是结果。 有趣的是当我打开excel文件时,双击这个特定的单元格编辑它,然后按下回车键而不改变任何东西,结果显示。 我不确定这是一个Python集成问题还是Excel问题。
OS - Windows 7 64-bit Python - 2.7 32-bit
我最好的猜测是这是由于公式的评估。 我不相信xlwt
会在插入公式时评估公式,这意味着您会得到一个值错误,因为在计算MMULT
函数时, SUMPRODUCT
的结果不存在。 当你双击并回车时,它的工作原理是因为Excel现在正在重新计算一切,给你一个有效的结果。