如何利用Python讓Excel快速按條件篩選數(shù)據(jù)
本文即使用python實(shí)現(xiàn)excel快速篩選數(shù)據(jù)
有一張 12 個(gè)月份的產(chǎn)品銷售情況表。
安裝所需的 Python 第三方庫
xlwings 的特色:
- xlwings 能夠非常方便地讀寫 Excel 文件中的數(shù)據(jù),并且能夠進(jìn)行單元格格式的修改
- 可以和 Matplotlib 以及 Pandas 無縫連接
- 可以調(diào)用 Excel 文件中 VBA 寫好的程序,也可以讓 VBA 調(diào)用用 Python 寫的程序
- 開源免費(fèi),一直在更新
導(dǎo)入 xlwings:
import xlwings as xw
通過 Python 啟動 Excel 文件
1.打開 Excel 程序
app =xw.App(visible=True,add_book=False)
其中參數(shù) visible(表示處理過程是否可視,也就是處理 Excel 的過程會不會顯示出來),add_book(是否打開新的 Excel 程序,也就是是不是打開一個(gè)新的 excel 窗口)。
2.打開 Excel 文件
workbook = app.books.open("2020 XX 公司銷售表匯總表.xlsx")
3.獲取所有的表格
sheets_list = workbook.sheets
4.設(shè)置篩選條件
select_value = '江西省' select_value1 = '博士'
5.新增 Sheet 存在篩選數(shù)據(jù)
qxs_excel = workbook.sheets.add(select_value)
自定義 Python 遍歷 Excel 的函數(shù)
1.新建數(shù)據(jù)列表,將數(shù)據(jù)添加到列表中
range_value_list = []
2,。自定義單一 Sheet 數(shù)據(jù)讀取類
def readrange(excel): for i in range(2,1000): #我的數(shù)據(jù)每張 Sheet 表最多只有 1000 行,所以設(shè)置的是 1000 #單個(gè)表格字符串 select_sheet_value = "E"+str(i) select_sheet_value1 = "C"+str(i) #整行表格字符串 str_sheet1 = "A"+str(i)+":"+"E"+str(i) select_value_sheet = excel.range(select_sheet_value).value select_value_sheet1 = excel.range(select_sheet_value1).value if select_value_sheet == select_value and select_value_sheet1 == select_value1:#這里設(shè)置搜索條件判斷,這里是表示兩個(gè)篩選條件同時(shí)滿足才會存入數(shù)據(jù)列表 str_value_row = excel.range(str_sheet1).value range_value_list.append(str_value_row) for excel in sheets_list: readrange(excel)
將數(shù)據(jù)寫入新的匯總表里
1.首先寫入標(biāo)題數(shù)據(jù)
qxs_excel.range("A1:F1").value = ["姓名","級別","學(xué)歷","薪資","地址"]
2.循環(huán)寫入數(shù)據(jù)列表數(shù)據(jù)到匯總表中
flag = 1 #因?yàn)橛?jì)算機(jī)從 0 開始,0 行已經(jīng)寫入標(biāo)題,所以這里是 1;如果有多行標(biāo)題,根據(jù)實(shí)際情況設(shè)置 for i in range_value_list: flag += 1 #整行表格字符串 str_sheet1 = "A"+str(flag)+":"+"E"+str(flag) qxs_excel.range(str_sheet1).value = i
運(yùn)行之后的效果如下:
總結(jié)
到此這篇關(guān)于如何利用Python讓Excel快速按條件篩選數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Python Excel快速按條件篩選數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python處理Excel表中單元格帶有換行的數(shù)據(jù)問題
這篇文章主要介紹了Python處理Excel表中單元格帶有換行的數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06關(guān)于多種方式完美解決Python pip命令下載第三方庫的問題
這篇文章主要介紹了多種方式完美解決python pip命令下載第三方庫的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12python實(shí)現(xiàn)對excel中需要的數(shù)據(jù)的單元格填充顏色
這篇文章主要介紹了python實(shí)現(xiàn)對excel中需要的數(shù)據(jù)的單元格填充顏色,文章圍繞主題展開詳細(xì)單元格填充介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-06-06Python Pygame實(shí)戰(zhàn)之水果忍者游戲的實(shí)現(xiàn)
大家還記得水果忍者這個(gè)游戲嗎?想當(dāng)年,這也是個(gè)風(fēng)靡全國的游戲,基本每個(gè)人都玩過。今天小編就用Python中的Pygame庫復(fù)刻這一經(jīng)典游戲,需要的可以參考一下2022-02-02