Есть ли способ записать что-то в файл XLS с помощью python, сохраняя при этом исходный формат этого файла XLS неизменным (например, размер шрифта, цвет фона ячейки и т. д.) Спасибо!
как записать в XLS с помощью python без изменений формата?
Ответы (4)
Возможно, взгляните на xlrd, xlwt, xlutils:
Я нашел это довольно полезным в прошлом.
person
juanchopanza
schedule
29.03.2011
Спасибо! Я попробовал xlutils.copy, но он полностью изменил исходные стили...
- person ladyfafa; 29.03.2011
Это должно помочь, следуя аналогичному совету @john machin, я заставил его работать: stackoverflow.com/questions/3723793/
- person juanchopanza; 29.03.2011
Если вы можете перейти на XML-сериализацию документов Office. Также взгляните на... http://www.python-excel.org/
person
Manuel Salvadores
schedule
29.03.2011
Вы также можете использовать pywin32, если вы используете Windows
person
Fábio Diniz
schedule
29.03.2011
@ladyfafa: Fabio означает: используйте COM-интерфейс в pywin32, чтобы напрямую использовать COM-интерфейс Excel. Это самое мощное и гибкое решение (вы можете делать все, что можно делать в Excel), но вы должны работать в системе Windows с установленным Excel.
- person winwaed; 29.03.2011
Если доступные инструменты, такие как xlrd, xlwt и xlutils, не работают, возможно, вам придется вернуться к программному редактированию файла с помощью Excel через COM. Конечно, вам понадобится копия Excel, вам придется работать из Windows, и это будет медленнее, чем другие подходы.
person
Steven Rumbalski
schedule
29.03.2011
Excel COM также является единственным способом создания/редактирования рабочих листов Excel 2007/2010 на данный момент. Я знаю, что хотел бы не-COM-решение для создания рабочих листов Excel 2007 и, в идеале, для их подписи. (Да, я знаю, что ОП специально запросил xls.)
- person winwaed; 29.03.2011