繁体   English   中英

追加 pd.ExcelWriter 得到 KeyError: 'Sheet1'

[英]append pd.ExcelWriter got KeyError: 'Sheet1'

我正在尝试为 Dataframe 编写一个 excel 附加函数,但出现错误提示KeyError 'Sheet1' 我试图删除

startrow = writer.sheets['Sheet1'].max_row

从 writer 函数的第一个语句开始。 没有提示错误,但 dfoutput_Financial 的dfoutput_Financial覆盖了以前的 excel 记录并将其放在 excel 文件的第 1 行中,并且dfoutput_PL附加在 excel 文件的最大行处。 如何解决KeyError 'Sheet1'问题?

代码

writer = pd.ExcelWriter('test.xlsx', engine='openpyxl')
dfoutput_Financial.to_excel(writer, sheet_name='Sheet1', startrow = writer.sheets['Sheet1'].max_row, index=False, header= False)
dfoutput_PL.to_excel(writer, sheet_name='Sheet1', startrow = writer.sheets['Sheet1'].max_row, index=False, header= False)
writer.save()

你得到KeyError的Sheet1中,因为“工作表Sheet1”不存在writer.sheets 要解决此问题,您必须在使用前加载工作簿。 像这样。

from openpyxl import load_workbook
writer = pd.ExcelWriter('test.xlsx', engine='openpyxl')

#Load Workbook
writer.book = load_workbook('test.xlsx')
writer.sheets =  {ws.title: ws for ws in writer.book.worksheets}
startrow = writer.sheets['Sheet1'].max_row

如果您仍然收到“Sheet1”的KeyError ,请检查它是否真的存在于test.xlsx `

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM