Python excel集成,#VALUE错误

时间:2012-11-08 19:52:36

标签: python excel xlwt

我有一个集成了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文件时,双击此特定单元格进行编辑并按Enter键而不更改任何内容,将显示结果。我不确定这是一个python集成问题还是它的Excel问题。

OS - Windows 7 64-bit
Python - 2.7 32-bit

1 个答案:

答案 0 :(得分:1)

我最好的猜测是,这是由于公式的评估。我不相信xlwt在插入公式时会对公式进行评估,这意味着您会收到值错误,因为SUMPRODUCT函数的评估时MMULT的结果不存在。双击并按Enter键时它的工作原因是Excel现在重新计算所有内容,为您提供有效的结果。