【问题标题】:when I copy data from one excel sheet and paste it to another excel file with multiple sheets, other sheets gets deleted当我从一个 Excel 工作表复制数据并将其粘贴到另一个具有多个工作表的 Excel 文件时,其他工作表被删除
【发布时间】:2020-01-03 22:32:33
【问题描述】:

我正在尝试将前 18 行从 test2 文件复制到 sheet2 中的 test1 文件,它复制数据但还将 test1 文件转换为名为“sheet2”的单个工作表,并且 test1 文件的 sheet1 被删除

我尝试过 xlsxwriter,但它在文件中添加了其他工作表。我不想将数据写入新工作表。我想将数据复制到另一个工作表而不删除该 Excel 文件的其他工作表。

这是我正在尝试的代码,所以 test2 有数据,我想复制前 18 行,然后将其粘贴到有 2 张纸的 test1 文件的 sheet2 中,代码确实复制了数据,但 test1 文件的 sheet1 被删除。我想保留其他工作表并将数据复制到 sheet2 中。

df=pd.read_excel(r'F:\test2.xlsx')

slc=df.iloc[1:1+18,:] 

slc_transposed = slc.T 

print(slc_transposed) 

slc_transposed.to_excel(r'F:\test1.xlsx','Sheet2',startrow=5,startcol=2)

【问题讨论】:

  • to_excel 不会修改现有文件,而是创建一个新文件
  • 那我应该用什么?,如何将“slc_transposed”复制到另一张具有多张表格的excel文件中?
  • 也许是openpyxl

标签: pandas


【解决方案1】:
wb = load_workbook(r'F:\test1.xlsx',data_only=True)
wb2 =load_workbook(r'F:\test3.xlsx')
sheet1=wb["education"]
sheet2=wb2["details"]

for i in range(1,sheet1.max_row+1): 
    for j in range(1,sheet1.max_column+1):
        sheet2.cell(row=i,column=j).value=sheet1.cell(row=i,column=j).value
wb.save('test1.xlsx')
wb2.save('test3.xlsx')

我使用了这段代码,它没有错误但也没有复制任何数据

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多