Python 自动化办公之Excel读取合并

背景: 问卷调查,将问卷调查的结果进行合并,汇总

说明:

        1.1 建议安装xlwt版本为1.20版本,版本太高报错

import xlwt, xlrd
from pathlib import Path, PurePath

src_path = r'C:\Users\think\Desktop\Python_Excel\question'
dst_path = r'C:\Users\think\Desktop\Python_Excel\result\result.xlsx'

# 获取调查问卷所有的文件
p = Path(src_path)  # 返回真实路径,判断对应的目录是否存在
files = [x for x in p.iterdir() if PurePath(x).match('*.xlsx')]  # 查找文件夹下所有的文件

# 准备存放读取的列表
content = []

# 读取调查问卷
for file in files:
    # 获取文件名
    username = file.stem
    # 打开Excel
    data = xlrd.open_workbook(file)
    # 打开调查问卷表格第一页
    table = data.sheets()[0]
    # 获取每一项
    re1 = table.cell_value(rowx=4, colx=4)
    re2 = table.cell_value(rowx=10, colx=4)
    # 临时存放每个人的调查结果,将每个人的结果存入到content列表中
    tmp = f'{username},{re1},{re2}'
    content.append(tmp.split(','))

# 准备写入到调查结果汇总的文件中
table_header = ['员工姓名', '第一项', '第二项']

# 创建excel对象
workbook = xlwt.Workbook(encoding='utf-8')
result_sheet = workbook.add_sheet("统计汇总")

row = 0
col = 0
for x in table_header:
    result_sheet.write(row, col, x)
    col += 1

# 向下移动一行
col = 0
row += 1
for line in content:
    for value in line:
        result_sheet.write(row, col, value)
        # 写完一行,右移一个单元格
        col += 1
    # 统计完一个人信息,下移一行
    row += 1
    col = 0

workbook.save(dst_path)

结果展示

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值