Estoy usando xlrd
, xlutils.copy
y xlwt
para abrir un archivo de plantilla, copiarlo, completarlo con nuevos valores y guardarlo.Preservar estilos utilizando python's xlrd, xlwt y xlutils.copy
Sin embargo, no parece haber una manera fácil de preservar el formateo de las celdas; siempre sale volando y se pone en blanco. ¿Hay alguna manera simple de que pueda hacer esto?
Gracias! /Yga
un script de ejemplo:
from xlrd import open_workbook
from xlutils.copy import copy
rb = open_workbook('output_template.xls',formatting_info=True)
rs = rb.sheet_by_index(0)
wb = copy(rb)
ws = wb.get_sheet(0)
for i,cell in enumerate(rs.col(8)):
if not i:
continue
ws.write(i,2,22,plain)
wb.save('output.xls')
Versiones:
xlrd
: 0.7.1xlwt
: 0.7.2
Una mejor solución sería xlwt agregando un 'wb.write_value (row, col, value)'. Esto funciona, pero tiene mucho olor a código en mi libro, trabajando en torno a una implementación deficiente de xlwt. – boatcoder
¿Pasó esto alguna vez? – YGA