文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python 实现从一个excel表格中选择相应区域数据粘贴到另一个excel表格中指定区域的方法

2023-09-04 16:49

关注
import pandas as pdfrom openpyxl import load_workbookdef qyhhsj(source_file,source_sheetname,source_col,source_start_row,source_end_row,source_start_col,source_end_col,target_file,target_sheetname,target_start_row,target_end_row,target_start_col,target_end_col):    """    source_file  数据源表格所在的路径    source_sheetname   数据源表格所在的sheet名称    source_col     数据源表格中需要的数据列的范围,如从C列到S列,则写成C:S    source_start_row  数据源表格开始行    source_end_row   数据源表格结束行    source_start_col 数据源表格开始列    source_end_col  数据源表格结束列    target_file          目标表格所在的路径    target_sheetname    目标表格所在的sheet名称    target_start_row     目标表格开始行    target_end_row    目标表格结束行    target_start_col    目标表格开始列    target_end_col    目标表格结束列    """    # 读取Excel文件    file_path = source_file    df = pd.read_excel(file_path, sheet_name=source_sheetname, header=None, index_col=None, usecols=source_col)    # 打开需要替换数据的Excel文件    wb2 = load_workbook(target_file)    # 获取第二个Excel文件中指定的sheet    ws2 = wb2[target_sheetname]    # 选择要交换的区域数据    required_data = df.iloc[source_start_row:source_end_row, source_start_col:source_end_col]    # 打印显示required_data中第一行第一列的数据    # print(required_data.iloc[0, 0])    """    # 指定要写入的Excel区域    target_start_row = 5  # 区域从第5行开始    target_start_col = 2  # 区域从第2列开始    target_end_row = 17  # 区域从第17行结束    target_end_col = 19  # 区域从第19列结束    """    ks_row=target_start_row    ks_col=target_start_col    # 遍历需要替换的区域行和列,将每个单元格的值替换成替换数据列中对应行的值    for i in range(target_start_row, target_end_row):        for j in range(target_start_col, target_end_col):            print(i, j)            # 将数据写入第i行第j列            ws2.cell(row=i, column=j, value=required_data.iloc[i - ks_row, j - ks_col])    # 保存修改后的第一个Excel文件    wb2.save(target_file)#调用qyhhsj方法,从源表格的第C列第1行到第13行数据输入到目标表格的'水平位移'sheet中第2列第5行到第17行中qyhhsj( r'C:\Users\Thinkpad\Desktop\数据最终处理结果(人工监测)\X位移量合并.xls','Sheet1','C:S',1,13,0,17,r'C:\Users\Thinkpad\Desktop\数据最终处理结果(人工监测)\金溪水库资料整编2023110--V6.xlsx','水平位移',5,17,2,19)#qyhhsj( r'C:\Users\Thinkpad\Desktop\数据最终处理结果(人工监测)\Y位移量合并.xls','Sheet1','C:S',1,13,0,17,r'C:\Users\Thinkpad\Desktop\数据最终处理结果(人工监测)\金溪水库资料整编2023110--V6.xlsx','水平位移',5,17,24,41)

来源地址:https://blog.csdn.net/ducanwang/article/details/131716830

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯