use*_*817 5 python excel xlrd xlwt xlutils
我已经运行了全部范围,似乎无法找到我正在寻找的东西.我在这里找到的所有主题对我来说都是死路一条.xlrd,xlwt和xlutils几乎可以满足我的需要,但是......基本思想是我需要使用Python将简单数据(字符串)写入特定的Excel模板,并将该模板写入新的.xls文件.
读取模板,将其复制到新的工作簿对象,写入新值,并写出新的.xls文件是没有问题的.但是,我找不到有一个Python的Excel模块既公式和格式.
`
our = 'template.xls'
# open up read-only template with formatting maintained
rb = open_workbook(our,formatting_info=True)
r_sheet = rb.sheet_by_index(4)
# copy this to a new workbook object
wb = copy(rb)
# 5th sheet (index = 4) is where we need to drop the data we have
w_sheet = wb.get_sheet(4)
# populate with new data!
for row_index in range(0, r_sheet.nrows):
w_sheet.write(row_index, 1, "some string that is our data")
# write it!
wb.save('new.xls')
Run Code Online (Sandbox Code Playgroud)
`
在模板中读取时,格式保持不变(对于某些颜色略有改变; meh!),但公式不是,因此"new.xls"在公式曾经存在的地方都有空白.
任何想法如何保持两者的格式和公式?
注意,我已经锁定了Python 2.7.
您可以使用openpyxl它 - 它只支持xlsx(和相关格式),而不支持xls(旧的Excel格式).
https://pypi.python.org/pypi/openpyxl/
http://openpyxl.readthedocs.org/en/latest/
https://bitbucket.org/openpyxl/openpyxl/src/2.2/doc/source/index.rst
打开/保存Excel工作表时,此包会保留公式.它也确实保留了格式,但它有一些小问题.但是,不保留原始Excel文件中的图像.
其他很酷的功能包括支持条件格式,图表,迷你图等等.
| 归档时间: |
|
| 查看次数: |
8909 次 |
| 最近记录: |