利用pandas结合openpyxl根据模板批量处理生成excel,且表格样式不变

利用pandas结合openpyxl批量处理生成excel表格

1.应用场景:

	现有两张表:学生姓名excel表、excel问卷模板表
	需求:1.想尽快将 学生姓名excel表 的姓名信息在 excel问卷模板表 中的某一位置填写,且每个学生都是单独的一个excel问卷模板表,这时就需要在某一文件夹下批量生成excel表格;
	     2.以及将每个生成的 excel文件 的文件名以相应的学生姓名结尾
	     3.生成的excel表格的样式与问卷模板表保持一致

2.话不多说,直接上代码:

copyExcel.py 主要处理方法
import copy
import openpyxl
from openpyxl.utils import get_column_letter

def copyExcelFunc(path, save_path, name):
    wb = openpyxl.load_workbook(path)
    wb2 = openpyxl.Workbook()

    sheetnames = wb.sheetnames
    for sheetname in sheetnames:
        print(sheetname)
        sheet = wb[sheetname]
        sheet2 = wb2.create_sheet(sheetname)

        # tab颜色
        sheet2.sheet_properties.tabColor = sheet.sheet_properties.tabColor

        # 开始处理合并单元格形式为“(<CellRange A1:A4>,),替换掉(<CellRange 和 >,)' 找到合并单元格
        wm = list(sheet.merged
Python中,可以利用pandasopenpyxl这两个强大的第三方库来轻松地创建、读取和操作Excel电子表格。 1. **安装所需库**: 首先,需要通过pip安装这两个库。在命令行输入以下命令: ``` pip install pandas openpyxl ``` 2. **导入库**: 导入pandas用于数据处理openpyxl用于直接操作Excel文件: ```python import pandas as pd from openpyxl import Workbook from openpyxl.utils.dataframe import dataframe_to_rows ``` 3. **创建Excel文件**: 使用`Workbook`创建一个新的工作簿,并添加工作表: ```python wb = Workbook() ws = wb.active # 获取第一个活动的工作表 ``` 4. **写入数据** (pandas): 用pandas DataFrame来创建数据并写入Excel: ```python data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]} df = pd.DataFrame(data) df.to_excel('output.xlsx', index=False) # 将DataFrame保存为Excel文件 ``` 5. **读取数据**: 使用pandasExcel文件加载数据: ```python df = pd.read_excel('output.xlsx') print(df.head()) # 打印前几行数据 ``` 6. **openpyxl操作**: 如果你想直接使用openpyxl进行操作,可以像下面这样一行一行地添加数据到单元格: ```python for r in dataframe_to_rows(df, index=False, header=True): ws.append(r) wb.save('output.xlsx') # 保存更改 ``` 7. **更新或删除内容**: 可以使用openpyxl提供的各种方法,比如`ws['A1'].value = 'New Value'`来修改单元格值,或者`ws.delete_rows(1)`删除第1行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值