我的 Excel 文件有什么问题导致我无法读入它?

问题描述 投票:0回答:1

我正在使用 python 和 openpyxl 库,并想读取 Excel 文件,如下所示:

import openpyxl

input_file = openpyxl.load_workboork(r"C:\Something...\input.xlsx", data_only=True)
input_sheet = input_file["Sheet01"]

除了 Excel 中的标准格式之外,我还使用

data_only=True
来包含日期和时间格式

我的Excel版本是2016年的。

运行代码后,我收到以下错误消息:

Traceback (most recent call last):
File "C:\Something...\main.py", line 2, in <module> input_file = openpyxl.load_workboork(r"C:\Something...\input.xlsx", data_only=True)
File "C:\Something...\venv\lib\site-packages\openpyxl\reader\excel.py", line 346, in load_workbook
reader.read()
File "C:\Something...\venv\lib\site-packages\openpyxl\reader\excel.py", line 307, in read
raise ValueError(ValueError: Unable to read workbook: could not read worksheets from C:\Something...\input.xlsx
This is most probably because the workbook source files contain some invalid XML.
  1. 据我所知,我的 openpyxl 库是最新的。
  2. 在文件中我已经删除了所有使用过的过滤器和不需要的过滤器 格式。
  3. 我打开并修复了我的文件,然后再次保存。
  4. 我的文件非常大,大约有 2800 行和 52 列。
  5. 除了标准文本和数字之外,我没有其他格式 我的文件中的格式、日期和时间格式。
  6. 我也使用过pandas,但在阅读时也出现错误 文件。据我所知,错误消息非常相似。

我认为要么文件仍然有问题,要么问题出在库上,但是正如前面提到的,它也不适用于“Pandas”。

否则我就完全难住了。

不幸的是,出于隐私原因我无法显示该文件。
openpyxl excel-2016 python-3.9
1个回答
0
投票

这可能是由于工作簿中的过滤器处于活动状态。这是 openpyxl 3.1 中的一个已知错误。如果在没有激活过滤器的情况下无法保存文件,您可以降级到 openpyxl 3.0。

https://foss.heptapod.net/openpyxl/openpyxl/-/issues/2055

© www.soinside.com 2019 - 2024. All rights reserved.