全網(wǎng)首發(fā),你沒見過的實(shí)用需求!用Python實(shí)現(xiàn)vlookup函數(shù)的 “一表引用” 和 “跨表引用”
本文介紹

Vlookup函數(shù),只要是和數(shù)據(jù)打交道的朋友,應(yīng)該不會陌生。
其實(shí)呢!Python里面也同樣可以實(shí)現(xiàn)這樣的功能。首先,我覺得我們應(yīng)該先要了解一下這個函數(shù)。
參數(shù)說明: vlookup(待查找目標(biāo), 查找區(qū)域, 匹配值所在的列, 精確匹配OR模糊查找);
用一句通俗的話來說明vlookup函數(shù)的用法: 針對每一個待查找目標(biāo),它就能從指定的查找區(qū)域中,查找返回想要查找到的值。
了解這個函數(shù)的含義后,關(guān)于vlookup()函數(shù),有以下3種常見用法:
① 一表引用:數(shù)據(jù)源和查找區(qū)域,都在同一個工作表中;
② 跨工作表引用:數(shù)據(jù)源在工作表1中,查找區(qū)域卻在工作表2中;
③ 跨工作簿引用:數(shù)據(jù)源在一個工作簿的工作表中,查找區(qū)域在另外一個工作簿的工作表中;
我們以①②為基礎(chǔ),給大家講述Python中如何實(shí)現(xiàn)不同方式的vlookup()功能。由于好多同學(xué)都有黃同學(xué)寫的“Python自動化文檔”,所以我就不再講述基礎(chǔ),大家可以自行下去查看。
一表引用
在講述“一表引用”之前,我們首先看看數(shù)據(jù)源,數(shù)據(jù)源和查找區(qū)域,都在同一個工作表中。
代碼如下:
from openpyxl import load_workbook workbook = load_workbook("vlookup1.xlsx") sheet = workbook["Sheet1"] sheet["G1"] = "名稱" for i in range(2,sheet.max_row+1): sheet[f"G{i}"] = f'=VLOOKUP(E{i},$K:$L,2,0)' workbook.save(filename = "vllokup1_一表引用.xlsx")
1
2
3
4
5
6
7
8
9
結(jié)果如下:
跨工作表引用
在講述“跨工作表引用”之前,我們再來看看數(shù)據(jù)源,數(shù)據(jù)源在一個工作表中,查找區(qū)域卻在另外一個工作表中。
代碼如下:
from openpyxl import load_workbook workbook = load_workbook("vlookup2.xlsx") sheet = workbook["Sheet1"] sheet["G1"] = "名稱" for i in range(2,sheet.max_row+1): # 注意這里的區(qū)別:跨表引用需要在前方加上,工作表名! sheet[f"G{i}"] = f'=VLOOKUP(E{i},Sheet2!$A:Sheet2!$B,2,0)' workbook.save(filename = "vllokup2_跨工作表.xlsx")
1
2
3
4
5
6
7
8
9
10
11
結(jié)果如下:
Python
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。