Python中openpyxl实现vlookup函数的实例


Posted in Python onOctober 28, 2020

相信很多学编程的人都对Vlookup函数不陌生,一些在excel中不方便处理的大量数据,用Python就可以轻松解决。下面介绍openpyxl库中如何实现vlookup函数 :

1.数据源介绍

如图所示,有一个“ vlookup.xlsx ”文件,“ A1:F11 ”是我们的数据源区域,“ K1:L5 ”是我们的查找源区域。我们的目的就是要在数据源区域的 G 列加一列数据,查找出不同类型下名称表示。

Python中openpyxl实现vlookup函数的实例

2.Vlookup函数介绍

这个函数我想大家应该都会,大家应该也不需要我介绍的太详细,因此我就简单的为大家介绍一下 vlookup 函数的语法。

  • 参数说明:vlookup (待查找目标, 查找区域, 匹配值所在的列, 精确匹配 OR 模糊查找);
  • 用一句通俗的话来说明 vlookup 函数的用法:针对每一个待查找目标,它就能从指定的查找区域中,查找返回想要查找到的值。

3.Excel中使用Vlookup函数

针对上述提到的数据源,了解 Vlookup 函数的语法后,下面来看看如何在 Excel 中使用 Vlookup 函数。

Python中openpyxl实现vlookup函数的实例

观察上图:首先,我们在 G1 单元格新增了一个“名称”列。接着,在 G2 单元格我们写了一个 vlookup 公式,E2 表示每一个待查找值,K1:L5 表示待查找区域,我们使用 F3 快捷键将这个区域变为了绝对引用,因为我们的查找区域就是这一个固定范围,表示待返回值在查找区域中所在的列数,表示精确匹配。最后,使用填充柄下拉填充即可。

4.Python中使用Vlookup函数

在 Python 中利用 openpyxl 库,就可以完成公式的填充。因此在使用 openpyxl 之前,需要使用 pip install openpyxl 安装好这个库。

from openpyxl import load_workbook
 
 
workbook = load_workbook("vlookup.xlsx")
sheet = workbook["Sheet1"]
 
 
sheet["G1"] = "名称"
for i in range(2,sheet.max_row+1): 
    sheet[f"G{i}"] = f'=VLOOKUP(E{i},$K$1:$L$5,2,0)'
workbook.save(filename = "vllokup1.xlsx")

在 openpyxl 中,读取已有的 Excel 文件,使用到的是 load_workbook 类,因此需要提前导入这个类。接着,实例化 load_workbook("vlookup.xlsx") 对象,得到一个工作簿对象。然后,使用 workbook["Sheet1"] 激活该工作簿中的 Sheet1 表,表示我们要针对这个表进行操作。完成上述操作后,下面就可以进行 vlookup 公式的填写了。

首先,我们利用 sheet["G1"] = "名称"给 G1单元格增加了一个表头。然后写了一个循环,循环第2行到最后一行,针对每一个 G 列单元格,我们写入上述 vlookup 公式。最后记得保存一下即可。

到此这篇关于Python中openpyxl实现vlookup函数的实例的文章就介绍到这了,更多相关Python基础之openpyxl如何实现vlookup函数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
详解Python中dict与set的使用
Aug 10 Python
Python进阶_关于命名空间与作用域(详解)
May 29 Python
Python实现查找匹配项作处理后再替换回去的方法
Jun 10 Python
python下解压缩zip文件并删除文件的实例
Apr 24 Python
PyTorch学习笔记之回归实战
May 28 Python
Python爬虫包BeautifulSoup简介与安装(一)
Jun 17 Python
解决Python下imread,imwrite不支持中文的问题
Dec 05 Python
Python程序打包工具py2exe和PyInstaller详解
Jun 28 Python
django数据库自动重连的方法实例
Jul 21 Python
Python制作数据预测集成工具(值得收藏)
Aug 21 Python
Selenium执行完毕未关闭chromedriver/geckodriver进程的解决办法(java版+python版)
Dec 07 Python
在 Python 中使用 7zip 备份文件的操作
Dec 11 Python
PyCharm最新激活码(2020/10/27全网最新)
Oct 27 #Python
Python下使用Trackbar实现绘图板
Oct 27 #Python
python openCV自制绘画板
Oct 27 #Python
如何在windows下安装配置python工具Ulipad
Oct 27 #Python
Python调用JavaScript代码的方法
Oct 27 #Python
Pycharm中如何关掉python console
Oct 27 #Python
python和C++共享内存传输图像的示例
Oct 27 #Python
You might like
用php实现像JSP,ASP里Application那样的全局变量
2007/01/12 PHP
如何批量替换相对地址为绝对地址(利用bat批处理实现)
2013/05/27 PHP
PHP中提问频率最高的11个面试题和答案
2014/09/02 PHP
PHP版本如何选择?应该使用哪个版本?
2015/05/13 PHP
php 读写json文件及修改json的方法
2018/03/07 PHP
JavaScript中的prototype使用说明
2010/04/13 Javascript
JavaScript Tips 使用DocumentFragment加快DOM渲染速度
2010/06/28 Javascript
javascript中的if语句使用介绍
2013/11/20 Javascript
JavaScript中的全局对象介绍
2015/01/01 Javascript
js实现跨域的4种实用方法原理分析
2015/10/29 Javascript
Javascript基于AJAX回调函数传递参数实例分析
2015/12/15 Javascript
AngularJS 依赖注入详解和简单实例
2016/07/28 Javascript
JS封装通过className获取元素的函数示例
2016/12/20 Javascript
详解打造 Vue.js 可复用组件
2017/03/24 Javascript
AngularJs 常用的过滤器
2017/05/15 Javascript
layui前端框架之table表数据的刷新方法
2018/08/17 Javascript
vue template中slot-scope/scope的使用方法
2018/09/06 Javascript
[00:32]2018DOTA2亚洲邀请赛VGJ.T出场
2018/04/03 DOTA
通过python下载FTP上的文件夹的实现代码
2013/02/10 Python
Python实现的简单模板引擎功能示例
2017/09/02 Python
python树莓派红外反射传感器
2019/01/21 Python
python中PS 图像调整算法原理之亮度调整
2019/06/28 Python
python实现桌面托盘气泡提示
2019/07/29 Python
Django密码存储策略分析
2020/01/09 Python
使用anaconda安装pytorch的实现步骤
2020/09/03 Python
丝芙兰加拿大官方网站:SEPHORA加拿大
2018/11/20 全球购物
String和StringBuffer的区别
2015/08/13 面试题
MYSQL基础面试题
2012/05/13 面试题
银行实习的自我鉴定
2013/12/10 职场文书
家长写给老师的建议书
2014/03/13 职场文书
物联网工程专业推荐信
2014/09/08 职场文书
学生顶撞老师的检讨书
2014/09/17 职场文书
2014年体育教师工作总结
2014/12/03 职场文书
护士长2015年终工作总结
2015/04/24 职场文书
重阳节主题班会
2015/08/17 职场文书
2019奶茶店创业计划书范本,值得你借鉴
2019/08/14 职场文书