首页 > 解决方案 > 在我的 Pandas 和 Openpyxl 代码中使用 Writer.Close() 函数时出错

问题描述

我编写了一个代码,它将一些 CSV 文件组合成一个 Excel 文件,并用代码结束了“编写器”:

writer.save()
writer.close()

但是,在代码完成后尝试打开该文件时出现以下错误:

We found a problem with some content in 'the file.xlsx'. Do you want us to try to recover as much as we can? If you trust the source of this workbook, click Yes.'

这似乎纯粹与 'Writer.Close()' 方面有关,因为没有它我不会得到错误。但是,相反,我无法打开该文件,因为它表明其他人正在使用它(即 - openpyxl)

我不确定是否相关,但我的文件系统在基于 OneDrive 云的系统上运行。

除了“writer.close()”之外,我目前的计划是暂停脚本以允许我将 excel 打印为 PDF(我发现这通过 Python 不可靠),然后“点击继续”继续通过以下方式导出 PDF电子邮件。

有关如何解决此错误的任何想法?

标签: pythonpandasopenpyxl

解决方案


如果没有看到更多代码,也可能没有您正在编写的数据示例,很难做出任何假设。根据您遇到的错误,这可能是由于输入/数据进入导致问题的实际 xlsx 文件而不是实际的“作者”。这是 Excel 表示您文件中的数据从标准的角度来看已“损坏”,需要修复。

您应该能够通过 excel 对文件进行“恢复”,它将识别文件中的问题点,然后您可以将其回溯到您的 python 程序并正确解决以消除问题。


推荐阅读