本文的文字及圖片來源于網路,僅供學習、交流使用,不具有任何商業用途,著作權歸原作者所有,如有問題請及時聯系我們以作處理
以下文章來源于艾然飛翔,作者寧晨
前言
在exce中vlookup函式功能非常強大、方便;但總是手動操作,畢竟還是不高效,在VBA里把一系列的手動操作變為一鍵操作實作目標,是不錯的選擇,如果你也會使用python的話,會發現目標實作起來,更簡單,
那么使用python操作excel時怎么實作這個功能?
資料源位置為Sheet1作業表:
要在另一個作業表Sheet2里查詢到上表里的后四列資訊:
實作起來很簡單,分三步走:
第一步:分別讀取資料
#第一步:讀取指定資料,注意作業表名稱‘Sheet1’的首字母是大寫狀態 df_source=pd.read_excel(r'/Users/dxn/Desktop/vlookup.xlsx',header=0,sheet_name='Sheet1',skipfooter=1) df_target=pd.read_excel(r'/Users/dxn/Desktop/vlookup.xlsx',header=0,sheet_name='Sheet2')
第二步:設定兩表共享有相同的索引列
#第二步,設定共有索引 df_source.set_index('物料名稱') df_target.set_index('物料名稱')
第三步:update方法完成目標
#第三步,update方法實作目標 df_target.update(df_source)
這三步是目標實作的關鍵步驟,思路清晰易懂,操作簡單,
完整代碼如下:
import numpy as np import pandas as pd import os import openpyxl from openpyxl import Workbook #在python中實作excel里的Vlookup函式功能,分三步走 #創建一個檔案夾以存放操作后的檔案 os.mkdir(r'/Users/dxn/Desktop/result') #創建作業簿以盛放操作結果表 wb=Workbook() wb.save(r'/Users/dxn/Desktop/result/匹配結果.xlsx') #第一步:讀取指定資料,注意作業表名稱‘Sheet1’的首字母是大寫狀態 df_source=pd.read_excel(r'/Users/dxn/Desktop/vlookup.xlsx',header=0,sheet_name='Sheet1',skipfooter=1) df_target=pd.read_excel(r'/Users/dxn/Desktop/vlookup.xlsx',header=0,sheet_name='Sheet2') #第二步,設定共有索引 df_source.set_index('物料名稱') df_target.set_index('物料名稱') #第三步,update方法實作目標 df_target.update(df_source) #匯出形成作業表 with pd.ExcelWriter(r'/Users/dxn/Desktop/result/匹配結果.xlsx',mode='a') as writer: df_target.to_excel(writer,sheet_name='匹配結果')
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/193875.html
標籤:Python
