首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xlsxwriter count/sum函数

Xlsxwriter count/sum函数
EN

Stack Overflow用户
提问于 2018-02-23 01:30:57
回答 2查看 2.2K关注 0票数 2

您好,我一直在使用xlsxwriter删除一些数据。我一直在通过xpath ->文本来识别数据。如以下代码所示。我一直在尝试使用xlsxwriter在一些单元格中执行一些平均值。然而,输出的excel文件却是"#DIV/0!“在单元格G2中,但当我双击每个单独的单元格两次时,这些单元格将被平均,我必须对所有要平均的单元格执行此操作。你知道我怎么才能克服这个问题吗?

代码语言:javascript
复制
for elem in driver.find_elements_by_xpath('//*[@id="financials_table_ratio"]/tbody/tr[45]/td[2]'):
    PER1=(elem.text)
for elem in driver.find_elements_by_xpath('//*[@id="financials_table_ratio"]/tbody/tr[45]/td[3]'):
    PER2=(elem.text)
for elem in driver.find_elements_by_xpath('//*[@id="financials_table_ratio"]/tbody/tr[45]/td[4]'):
    PER3=(elem.text)
for elem in driver.find_elements_by_xpath('//*[@id="financials_table_ratio"]/tbody/tr[45]/td[5]'):
    PER4=(elem.text)

worksheet.write('B2',PER)
worksheet.write('C2',PER1)
worksheet.write('D2',PER2)
worksheet.write('E2',PER3)
worksheet.write('F2',PER4)

worksheet.write_formula('G2', '=average(C2:F2)')
EN

回答 2

Stack Overflow用户

发布于 2018-02-23 04:30:54

XlsxWriter使用大写的AVERAGE(),而不是小写的Excel,因此您需要将其与Excel一起使用。

请参阅XlsxWriter文档的Dealing with formula errors部分。

票数 0
EN

Stack Overflow用户

发布于 2018-02-23 04:43:09

来自Official documentation

XlsxWriter不计算公式的结果,而是将值0存储为公式结果。然后,它在XLSX文件中设置一个全局标志,表示在打开该文件时应重新计算所有公式和函数。

这是Excel文档中推荐的方法,通常它适用于电子表格应用程序。但是,没有计算公式工具的应用程序将只显示0结果。这类应用程序的示例有Excel Viewer、PDF Converters和一些移动设备应用程序。

如果需要,还可以使用write_formula()的可选value参数指定公式的计算结果

因此,在编写公式后,如果按下查看结果(例如,关闭/重新生成,但可能太“粗鲁”),则需要采取一些操作来执行计算。

PS:鉴于John McNamara给出了不同的答案,我猜他的答案是正确的。从this上看,我猜我的答案可能也是正确的。我不知道0 (在[1]中)和#DIV/0! (在OP中)存在差异的原因。

PS2:其他有趣的问题:How to make unoconv auto calculate formulae before converting into pdf?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48933774

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档