【发布时间】:2018-10-18 14:25:41
【问题描述】:
我试图打开一个 Excel 文件,我需要在该文件中将数据框插入某些工作表,同时不理会其他工作表。当我在其他 excel 文件上测试它时,该脚本运行良好。当我在实际需要的设备上使用它时,会收到一条错误消息。
这是脚本:
from openpyxl import load_workbook
book = load_workbook(self.directory)
Self.directory 指的是我的文件位置。正如您在回溯中看到的,在尝试执行 load_workbook() 时它已经在这一行失败,并给出以下错误消息:
ValueError: 最大值为 14
这是相关的回溯(我留下了以虚拟环境文件夹“virtual”开头的目录位置):
"""
book = load_workbook(self.directory)
virtual\lib\site-packages\openpyxl\reader\excel.py", line 217, in load_workbook
shared_strings = read_string_table(archive.read(strings_path))
virtual\lib\site-packages\openpyxl\reader\strings.py", line 22, in read_string_table
text = Text.from_tree(node).content
virtual\lib\site-packages\openpyxl\descriptors\serialisable.py", line 84, in from_tree
obj = desc.expected_type.from_tree(el)
virtual\lib\site-packages\openpyxl\descriptors\serialisable.py", line 84, in from_tree
obj = desc.expected_type.from_tree(el)
virtual\lib\site-packages\openpyxl\styles\fonts.py", line 110, in from_tree
return super(Font, cls).from_tree(node)
virtual\lib\site-packages\openpyxl\descriptors\serialisable.py", line 100, in from_tree
return cls(**attrib)
virtual\lib\site-packages\openpyxl\cell\text.py", line 114, in __init__
self.family = family
virtual\lib\site-packages\openpyxl\descriptors\nested.py", line 36, in __set__ 6, in __set__
super(Nested, self).__set__(instance, value)
virtual\lib\site-packages\openpyxl\descriptors\base.py", line 110, in __set__ , in __set__
super(Min, self).__set__(instance, value)
virtual\lib\site-packages\openpyxl\descriptors\base.py", line 89, in __set__ in __set__
raise ValueError('Max value is {0}'.format(self.max))
ValueError: Max value is 14
"""
我意识到我使用的excel文件超过了self.max的限制。
我自己尝试过筛选 openpyxl 脚本,但我无法弄清楚 self.max 指的是什么,或者我如何更改我的 Excel 文件以便加载工作簿。
谁能指出我正确的方向?
提前致谢!
【问题讨论】:
标签: python excel pandas openpyxl valueerror