[英]Is it possible to overwrite existing data in .xlsx file with openpyxl?
[英]Data missing, format changed in .xlsx file having multiple sheets using pandas, openpyxl while adding new sheet in existing .xlsx file
我有一个Final.xlsx
,其中包含多个工作表shee1, sheet2 ,sheet3
,每个工作表都有一些图形和数据。 我还有另一个文件file5.xlsx
,我想在tab中的Final.xlsx
中添加。 下面的代码可以正常工作,但是Final.xlsx
现有图纸数据丢失了(内容,格式,grpahs等)。 需要帮助解决此问题。
import pandas
from openpyxl import load_workbook
book = load_workbook('foo.xlsx')
writer = pandas.ExcelWriter('foo.xlsx', engine='openpyxl')
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
df1=pd.read_excel('file5.xlsx')
df1.to_excel(writer, "new",index=False)
writer.save()
在内部,Pandas使用xlrd库读取xlsx文件。 这个库很快,但是,因为它本质上是固定在对BIFF格式的支持上,所以对OOXML的支持是有限的。 看到Pandas对图表一无所知,反正无法保留它们。
openpyxl提供公用事业openpyxl.utils.dataframe
为XLSX的行和熊猫Dataframes让您完全控制工作时之间去,同时保持近在你的文件一切。 但是,就您而言,您甚至不需要熊猫,因为您可以简单地循环“ file5.xlsx”中的单元并将它们复制到其他文件中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.