需求
读取两个表的姓名列进行匹配,把第一个表的评语复制到第二个表对应行的第四列。
高一下期末评语(综评)表:
学期评语模板表
代码
import openpyxl
# 打开xlsx文件
file_path1 = 'D:\桌面\新建文件夹\\高一下期末评语(综评).xlsx'
file_path2 = 'D:\桌面\新建文件夹\学期评语模板.xlsx'
file_path3 = 'D:\桌面\新建文件夹\学期评语模板_new.xlsx'
workbook1 = openpyxl.load_workbook(file_path1)
workbook2 = openpyxl.load_workbook(file_path2)
# 获取第一个工作表
excel1 = workbook1.active
excel2 = workbook2.active
# 遍历每个单元格
for row_excel1 in excel1.iter_rows(min_col=0, max_col=excel1.max_column):
for row_excel2 in excel2.iter_rows(min_col=0, max_col=excel2.max_column):
# 取第一个表(评语)的一个姓名,与第二个表(模板)的所有姓名进行对比
if (row_excel1[0].value == row_excel2[0].value):
# 如果第一个表第一列的姓名与第二个表的某一列相同,则把第一个表的第三列,复制到第二表对应的第四列
row_excel2[3].value = row_excel1[2].value
workbook2.save(file_path3)