首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数据丢失,在现有.xlsx文件中添加新工作表时,具有多个工作表的.xlsx文件的格式已更改

数据丢失,在现有.xlsx文件中添加新工作表时,具有多个工作表的.xlsx文件的格式已更改
EN

Stack Overflow用户
提问于 2018-08-29 18:05:07
回答 1查看 300关注 0票数 0

我有一个包含多个sheet - shee1, sheet2 ,sheet3Final.xlsx,每个表都有一些图形和数据。我有另一个文件file5.xlsx,我想添加到选项卡中的Final.xlsx中。下面的代码工作正常,但是Final.xlsx现有的工作表数据(内容、格式、grpahs等)丢失了。需要帮助来解决这个问题。

代码语言:javascript
运行
复制
    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()
EN

回答 1

Stack Overflow用户

发布于 2018-08-29 20:23:52

在内部,Pandas使用xlrd库读取xlsx文件。这个库速度很快,但因为它基本上固定在对BIFF格式的支持上,所以它对OOXML的支持是有限的。由于Pandas对图表一无所知,它无论如何也不能保留它们。

openpyxl在openpyxl.utils.dataframe中提供了在XLSX的行和Pandas Dataframe之间切换的实用程序,让您在工作时完全控制,同时将几乎所有其他内容保留在文件中。然而,在您的例子中,您甚至不需要Pandas,因为您可以简单地循环"file5.xlsx“中的单元格,并将它们复制到其他文件中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52074771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档