python openpyxl 多个sheet vlookup



import pandas as pd
import openpyxl
from openpyxl.styles import Border, Side,colors
wb = openpyxl.load_workbook('../xlwings/vlookup.xlsx')
sheet1 = wb.sheetnames[0]
df_total = pd.read_excel('../xlwings/vlookup.xlsx',sheet_name=sheet1)
students_dic = {
'姓名':[],
'电话':[],
'班级':[]
}
for sheet_name in wb.sheetnames[1:]:
sheet = wb[sheet_name]
for row in sheet.iter_cols(min_row=2, max_row=sheet.max_row, min_col=1,max_col=1):
for cell in row:
students_dic['姓名'].append(cell.value)
cell.value = sheet_name[:2]
students_dic['班级'].append(cell.value)
for row in sheet.iter_cols(min_row=2, max_row=sheet.max_row, min_col=2,max_col=2):
for cell in row:
students_dic['电话'].append(cell.value)
df_students = pd.DataFrame(data=students_dic)
df_merge = pd.merge(left=df_total,right=df_students,left_on=["班级","姓名"],right_on=["班级","姓名"])
df_merge["电话号码"] = df_merge["电话"]
df_merge.drop(columns="电话",inplace=True)
df_merge = df_merge.sort_values("班级")
df_merge.to_excel('../xlwings/result2_vlookup.xlsx',index=False)
border = Border(
left=Side(border_style="medium", color=colors.BLACK),
right=Side(border_style="medium", color=colors.BLACK),
top=Side(border_style="medium", color=colors.BLACK),
bottom=Side(border_style="medium", color=colors.BLACK)
)
wb2 = openpyxl.load_workbook('../xlwings/result2_vlookup.xlsx')
sheet2 = wb2.active
sheet2.title = "多个sheet_vlookup_多列"
for row in sheet2.iter_rows(min_row=1,max_row=sheet2.max_row, min_col=1, max_col=sheet2.max_column):
for cell in row:
cell.border=border
wb2.save('../xlwings/result2_vlookup.xlsx')
python openpyxl 多个sheet vlookup的更多相关文章
- 利用Python openpyxl操作Excel
from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = ...
- 转 Python - openpyxl 读写操作Excel
Python - openpyxl 读写操作Excel openpyxl特点 openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间 ...
- python openpyxl、RESTful、Webservice接口 基础知识
最近 在做接口测试的时候,遇到如下问题:如何通过数据驱动去做批量接口测试呢,我们的测试数据放在哪里去维护?下面整理出相关点,供大家参考 1.如何维护接口测试数据:放在excel文件中,通过python ...
- python openpyxl 操作 excel
初识与安装 Openpyxl is a Python library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files. 安装 ...
- Python openpyxl : Excel 文档简单操作
安装方法 使用 pip 或通过专门python IDE(如pyCharm)进行安装 其中pip安装方法,命令行输入: pip install openpyxl 基本使用 第一步先是要导入 openp ...
- Python openpyxl、pandas操作Excel方法简介与具体实例
本篇重点讲解windows系统下 Python3.5中第三方excel操作库-openpyxl: 其实Python第三方库有很多可以操作Excel,如:xlrd,xlwt,xlwings甚至注明的数据 ...
- python excel练习:新建sheet、修改名称、设定颜色、打印sheet名称,复制,保存
练习: 新建一个sheet 设定一个sheet的插入位置 修改sheet的名称为‘xiaxiaoxu’ 设定该sheet的背景标签的颜色 获取全部sheet的名称,打印每个sheet的名称 copy一 ...
- python openpyxl 封装Execl常用操作的方法
封装Excel操作方法:先装openpyxl:pip install openpyxl==2.4.5(可以指定版本) 封装脚本:#encoding=utf-8 from openpyxl import ...
- 用python + openpyxl处理excel(07+)文档 + 一些中文处理的技巧
sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频教程) https://study.163.com/course/introduction.htm?courseId=1005269003&am ...
- Python openpyxl Read
#! /usr/bin/env python # coding=utf-8 from openpyxl import Workbook, load_workbook wb = load_workboo ...
随机推荐
- 使用JavaHTTPClient发送请求
import org.apache.http.Header; import org.apache.http.HttpEntity; import org.apache.http.HttpHeaders ...
- SqlServer查看索引信息
sp_helpindex tablename
- Oracle 低版本客户端连接19C报错ORA-28040
# 适用范围12.2+# 问题概述客户使用Oracle11.2客户端连接Oracle 19c的时候,报错: ORA-28040: No matching authentication protocol ...
- PR / PO审批
PR审批的BAPI 1.单个项目PR审批 CALL FUNCTION 'BAPI_REQUISITION_RELEASE' EXPORTING number = l_banfn rel_code = ...
- kibana7.6.2内网windows系统下编译打包部署
1.在kibana根目录下执行命令: yarn build --skip-os-packages 2.报错无法下载node:将node相关文件下载放到kibana/.node_binaries/10 ...
- Expected indentation of 2 spaces but found 4
预期缩进2个空格,但发现4个 把缩进空格修改后如图
- 从URL中获取参数
1.跳转测试页面 获取的url上的参数 <!doctype html> <html lang="en"> <head> < ...
- 【JVM】学习JVM垃圾回收理论
参考链接:https://www.cnblogs.com/aspirant/p/8662690.html 一,垃圾回收算法 JVM内存结构:程序计数器.虚拟机栈.本地方法栈.堆区.方法区 1,引用计数 ...
- 完整的javaweb文档
1.index.jsp <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8&qu ...
- 攻防世界Web进阶篇——warmup
打开链接,发现是一张滑稽 查看页面源代码,发现文件 于是打开source.php,发现 打开hint.php,根据提示得知flag在ffffllllaaaagggg文件中 回到source.php,检 ...