【发布时间】:2019-08-04 09:37:46
【问题描述】:
我想将数据框写入已有内容的现有 .xlsm 文件。
Write pandas dataframe to xlsm file (Excel with Macros enabled) 描述了如何写入新文件,但我想写入将新工作表添加到现有 .xlsm 文件。当我使用以下内容时(如问题所示):
import pandas as pd
df = pd.DataFrame({'First' : [5, 2, 0, 10, 4],
'Second' : [9, 8, 21, 3, 8]})
writer = pd.ExcelWriter('test.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1')
workbook = writer.book
workbook.filename = 'test.xlsm'
workbook.add_vba_project('./vbaProject.bin')
df.to_excel(writer, sheet_name='Sheet1') #This is the df I'm trying to add to the sheet
writer.save()
它会覆盖原始内容,现有的 .xlsm 文件只有新添加的工作表。
我不太清楚如何修改上面链接问题中的代码以考虑现有文件。
谢谢
*我已提取此处描述的 vbaProject.bin 广告:https://xlsxwriter.readthedocs.io/working_with_macros.html *
【问题讨论】: