Python读取excel表格人员数据同时批量写入多个excel个人登记表

背景:驻村期间需要将1张含有200多人的人员记录数据写入人员信息登记表中,1条记录对应一个人员信息登记表。如果复制粘贴肯定比较慢,所以当然使用Python来解决。涉及的字段其实有23个,因涉及其他问题这里演示只用10个字段。表格如下:

另一张excel表已经有人员数据,这里虚构了2条记录。

使用的库:xlrd(版本1.2.0)、openpyxl

代码及注释如下:

# 功能:excel人员信息记录表批量写入多个单表人员信息登记表
# 作者:永远的疯子
# 时间:2022-3-31


import xlrd
import openpyxl


file_person_record = 'I:/驻村类/填表/人员信息登记表_总表.xlsx'
file_simple_table = 'I:/驻村类/填表/人员信息登记表.xlsx'  # 模板表


def read_excel():
    wb = xlrd.open_workbook(filename=file_person_record)  # 打开文件
    table = wb.sheet_by_name('详细表')  # 通过名字获取表格
    for i in range(1, table.nrows):
        rows = table.row_values(i)  # 获取行内容
        write_lists_to_excel(rows)


def write_lists_to_excel(rows):
    wb = openpyxl.load_workbook(file_simple_table)
    active_sheet = wb.active
    name = rows[0] + '_' + rows[7]  # 另存时用
    active_sheet['a2'] = '填表单位(盖章):****居委会      填表人:永远的疯子        填表时间:2022年3月31日'
    active_sheet['b3'] = rows[0]    # 姓名
    active_sheet['d3'] = rows[1]    # 性别
    active_sheet['f3'] = rows[2]    # 民族
    active_sheet['b4'] = rows[3]    # 别名
    active_sheet['d4'] = rows[4]    # 出生年月
    active_sheet['f4'] = rows[5]    # 学历  (学位)
    active_sheet['b5'] = rows[6]    # 籍贯
    active_sheet['d5'] = rows[7]    # 身份证号码
    active_sheet['b6'] = rows[8]    # 个人简历
    active_sheet['b7'] = rows[9]    # 现住地址
    wb.save('I:/驻村类/填表/' + name + '.xlsx')


if __name__ == '__main__':
    read_excel()

 后记:本文章只是简单应用,涉及的表格有固定格式,因此就用简单的单元格赋值即可。运行代码后会在目录下生成姓名+身份证号的单个xlsx文件,试一下吧。挺香的!

  • 8
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值