Python创建Excel文件

hec6srdp  于 2023-04-07  发布在  Python
关注(0)|答案(2)|浏览(117)

我试图生成一个excel,而不删除用户配置。例如,您可以在这里创建

一个新的视角省保存吧。
但是当我用pandas或其他任何东西阅读excel文件并生成excel时,视图将被删除。
有没有什么方法可以让我在python中再次创建视图?或者不删除视图?
我研究了其他一些库,如openpyxl,xlswriter,但我没有发现任何选项可以做到这一点。

axkjgtzd

axkjgtzd1#

Openpyxl has the functionality to use Sheet Views。我从来没有用过它,所以我不能给予你细节。理论上它可以让你阅读和重建一个工作表视图。
据我所知,Pandas并不包含这个功能,它所拥有的是最近的一项功能(在openpyxl中也有),可以添加到现有的Excel工作簿中,而不是覆盖。
如果您有一个工作表视图指向一个特定的工作表,并正在添加/编辑一个 * 不同 * 的工作表,您可以使用这个,它不应该影响工作表视图。
如果你正在编辑工作表视图所指向的工作表,那么你需要使用Openpyxl重新构建视图(但是如果对你来说更容易的话,你仍然可以使用Pandas来初始化它)。
在Pandas中追加的代码是:

# use ExcelWriter rather than using to_Excel directly in order to give access to the append & replace functions
with pd.ExcelWriter("data.xlsx", engine="openpyxl", mode="a", if_sheet_exists="replace") as writer:
    df.to_excel(writer, 'My Data', index=False)

如果你直接使用openpyxl,那么workbook.create_sheet(sheet_name)会在现有的工作簿上添加一个新的工作表。
你可能会发现你不得不使用win32 com,一个模块,它可以让你访问Excel中vba的一些功能。我能轻易找到这两个人
https://learn.microsoft.com/en-us/office/vba/api/excel.window.sheetviews
https://learn.microsoft.com/en-us/office/vba/api/excel.sheetviews

ohtdti5x

ohtdti5x2#

您可以使用模块in2xl。该模块纯粹用于在不更改文件的情况下将数据插入Excel。这意味着您的视图不会更改。

相关问题