Python 如何在转换为pdf之前使unoconv自动计算公式?

Python 如何在转换为pdf之前使unoconv自动计算公式?,python,excel,pdf,libreoffice,unoconv,Python,Excel,Pdf,Libreoffice,Unoconv,我使用python模块Xlsxwriter创建了一个.xlsx文件 工作正常,但当我运行时,任何包含公式的单元格都将显示为空或0 unoconv -f pdf spreadsheet.xlsx 在转换为pdf之前,如何强制unoconv自动计算值?在撰写本文时,显然,unoconv故意不进行任何重新计算,因为它可能导致错误。看见unoconv源代码的相关部分被注释掉了 因此,您可以尝试的一件事是进入您的unoconv副本并取消注释这些行(使它们再次处于活动状态)。你可能会出错,也可能会没事 如

我使用python模块Xlsxwriter创建了一个.xlsx文件

工作正常,但当我运行时,任何包含公式的单元格都将显示为空或0

unoconv -f pdf spreadsheet.xlsx

在转换为pdf之前,如何强制unoconv自动计算值?

在撰写本文时,显然,unoconv故意不进行任何重新计算,因为它可能导致错误。看见unoconv源代码的相关部分被注释掉了

因此,您可以尝试的一件事是进入您的unoconv副本并取消注释这些行(使它们再次处于活动状态)。你可能会出错,也可能会没事

如果公式很简单,您可以尝试的另一件事是使用Python计算它们,并使用XlsxWriter将结果与公式一起写入。请注意,有一个可选的
参数。引用官方文件:

XlsxWriter不计算公式的结果,而是将值0存储为公式结果。然后,它在XLSX文件中设置一个全局标志,表示打开文件时应重新计算所有公式和函数。这是Excel文档中推荐的方法,一般来说,它适用于电子表格应用程序。但是,没有计算公式功能的应用程序(如Excel Viewer)或某些移动应用程序将只显示0结果。

如果需要,还可以使用可选的
参数指定公式的计算结果。当使用不计算公式结果的非Excel应用程序时,这有时是必要的:[……]

请注意,如果公式是这样的,您可以使用Python计算它们,并且您只关心最终的PDF(没有人会使用电子表格,在您将其转换为PDF后,您只需将其扔掉),那么您可以直接编写值,而无需任何公式