【问题标题】:Pandas To Excel write to an existing xlsx filePandas To Excel 写入现有的 xlsx 文件
【发布时间】:2021-01-17 05:22:11
【问题描述】:

我正在尝试将数据框写入一个工作簿上的现有 Excel 工作表。我在这个 Excel 工作簿中有其他工作表,它们不应该受到影响。我要覆盖的工作表是一个名为“数据”的选项卡。我的代码如下:

    df= pd.read_sql(sql='EXEC [dbo].[spData]', con=engine)

    excel_file_path = "C:/Shared/Test.xlsx"

    book = load_workbook(excel_file_path)
    writer = ExcelWriter(excel_file_path, engine='openpyxl')
    writer.book = book
    writer.sheets = dict((ws.title, ws) for ws in book.worksheets)

    df.to_excel(writer, sheet_name='Data', index=False, header=[
        'A','B','C','D','E','F'])
    writer.save()

代码已经在调试模式下运行了很长时间,没有出现任何错误,但我不确定上面的代码是否正确,符合我的预期。我可以看到文件说 0KB,因此它已经摆脱了其他工作表,因为原始文件是 55,939kb。我能够使用 ExcelWriter 和引擎“openpyxl”将工作簿作为新工作表写入。但在上面的代码中,我想用我的数据框中的数据替换工作表的内容。

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    这工作添加了 mode='a'

       writer = ExcelWriter(excel_file_path, engine='openpyxl', mode='a')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      • 2018-11-17
      • 1970-01-01
      • 1970-01-01
      • 2015-08-23
      相关资源
      最近更新 更多