Python 在xlsxwrtier中使用嵌套公式

Python 在xlsxwrtier中使用嵌套公式,python,excel,xlsxwriter,Python,Excel,Xlsxwriter,我正在尝试使用python和xlsxwriter生成excel工作表,我希望单元格中有以下公式: =IFERROR(AVERAGE(A1:A10);"") 而我的德语excel则显示为 =WENNFEHLER(MITTELWERT(A1:A10);"") 但我并不认为语言方面有什么不同 只要我这样做,它就会很好地工作: worksheet.write_formula(l+4,1+k,"=AVERAGE(%s%s:%s%s)"%(ch

我正在尝试使用python和xlsxwriter生成excel工作表,我希望单元格中有以下公式:

=IFERROR(AVERAGE(A1:A10);"")
而我的德语excel则显示为

=WENNFEHLER(MITTELWERT(A1:A10);"")
但我并不认为语言方面有什么不同

只要我这样做,它就会很好地工作:

worksheet.write_formula(l+4,1+k,"=AVERAGE(%s%s:%s%s)"%(chr(65+1+k),4,chr(65+1+k),l+4))
不起作用的是使用嵌套公式。Excel在打开工作表时总是出现错误。 我认为这应该是可行的:

worksheet.write_formula(l+4,1+k,"=IFERROR(AVERAGE(%s%s:%s%s);0)"%(chr(65+1+k),4,chr(65+1+k),l+4))
我相信我在xlsxwriter中犯了语法错误或遇到了限制。 有人知道这在xlsxwriter中是如何工作的吗

我在文档或其他地方找不到嵌套公式。 这可能吗

最好的


Nosferuity

这个公式应该有效,但您需要将分号改为逗号。请参阅XlsxWriter文档的一节,其中解释了这一点以及Excel公式之间的一些其他差异:

此外,公式必须使用美式分隔符/范围运算符编写,该运算符是逗号(而不是分号)。因此,具有多个值的公式应编写如下:

工作表。写出公式('A1','=SUM(1,2,3)#好
工作表。写出公式('A2','=和(1;2;3)#分号。加载时出错。
该文档中还有一个指向此handy的链接


最后,您可能还想看看XlsxWriter提供的,它可能会帮助您在公式中创建范围。

非常感谢。看起来我很接近,但没有足够集中地阅读文档