Openpyxl: 'ValueError: Максимальное значение равно 14' при использовании load_workbook - PullRequest
0 голосов
/ 08 мая 2018

Я попытался открыть файл 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, чтобы загрузить книгу.

Кто-нибудь может указать мне правильное направление?

Заранее спасибо!

Ответы [ 3 ]

0 голосов
/ 25 июля 2018

количество комментариев в штучной упаковке не решило мою проблему. Мне приходилось удалять некоторые листы до тех пор, пока я не получил менее 14 листов, чтобы открыть / прочитать документ.

0 голосов
/ 23 января 2019

Мне пришлось удалить все форматирование в листе, с которым я работал.

в Libreoffice; выбрать все, «очистить прямое форматирование»

0 голосов
/ 13 июня 2018

Мне удалось обойти ошибку после удаления 15-го + маленького «поля для комментариев» на листе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...