python - 将数据从一个工作表复制到另一个工作簿中的指定工作表
问题描述
因此,我在工作中有一项繁琐的任务,其中涉及使用从不同系统中提取的新数据更新一个 excel 文件,我希望这些数据能够自动化。
这看起来像这样:new_workbook[sheet1] -> 粘贴到 target_workbook[sheet1] 的末尾
列的格式和形状完全相同。
我在这里熟悉 xlwings api.copy
import xlwings as xw
source = r'source.xlsx'
target = r'target.xlsx'
wb = xw.Book(source)
sht = wb.sheets[0]
new_wb = xw.Book(target)
new_sht = new_wb.sheets[0]
sht.api.Copy(None, After=new_sht.api)
new_wb.save()
new_wb.close()
但这会在目标工作簿中创建新的工作表并将数据粘贴到那里,而不是现有的工作表中。有没有办法解决这个问题?
解决方案
我认为这个迭代解决方案会对您有所帮助。
#import modules
import pandas as pd
from openpyxl.utils.dataframe import dataframe_to_rows
from openpyxl import load_workbook
#read data from source path
df=pd.read_excel(source)
#load workbook and create sheet
wb=load_workbook(target)
ws=wb.create_sheet("new_worksheet")
#add values in df iteratively to sheet named ws
for row in dataframe_to_rows(df,index=False,header=True):
ws.append(row)
#save and close workbook
wb.save(target)
wb.close()
推荐阅读
- api - 使用空手道进行双向 api 测试
- node.js - 当我从角度形式发送数据时,在 node.js 中获取“未定义”
- javascript - 使用 laravel api 和 vue js 为折线图格式化 json
- java-8 - JHipster RedirectingEurekaHttpClient 请求执行错误
- xamarin - 从 ContentView 访问 App.xaml 中的全局资源
- python - 如何以最佳方式从字符串中分离数字
- javascript - Javascript - 从 JSON 中寻找比萨赢家
- c++ - 如何在 C++ (Arduino) 中将浮点数组转换为字节数组
- javascript - 如何在angular2+中将动态数据从父级传递给子级
- python - 为什么我不断收到 [BrokenPipeError: [Errno 32] Broken pipe],无论我的池中有多少工作人员在 python3.8 中使用多处理库?