匯總同一文件夾下多個excel

```# -*- coding:utf-8 -*-

import openpyxl

import xlrd

import os.path

import time

workbook1 = openpyxl.load_workbook('C:/Users/Administrator/Desktop/匯總.xlsx')#提前建一個匯總的表

name_list = workbook1.sheetnames #獲取提前建一個匯總的表的sheet表名

sheet1 = workbook1[name_list[0]]#取第一個sheet表

sheet1.append(['姓名','工資','工資實發(fā)','年度'])#給匯總表添加標(biāo)題,標(biāo)題名按照提取表的字段來命名

path = 'C:/Users/Administrator/Desktop/匯總excel/'#需要匯總表的文件夾位置

file_list = os.listdir(path)? # 獲取這個文件夾下所有的excel文檔聂薪。

for file in file_list:

? ? if os.path.splitext(file)[1]=='.xlsx':? #獲取所有xlsx的文件

? ? ? ? workbook = openpyxl.load_workbook(path+file)? # 加載已經(jīng)存在的excel

? ? ? ? name_list = workbook.sheetnames #獲取所有的sheet表名

? ? ? ? sheet = workbook[name_list[0]]#取第一個sheet表

? ? ? ? #print(sheet.dimensions) 獲取所有表的范圍 A1:O24

? ? ? ? cell = sheet['A']

? ? ? ? for i in cell:

? ? ? ? ? ? if i.value == '序號':

? ? ? ? ? ? ? ? a = i.row

? ? ? ? ? ? ? ? print(a)

? ? ? ? ? ? elif i.value == '合計':

? ? ? ? ? ? ? ? b = i.row

? ? ? ? ? ? ? ? print(b)

? ? ? ? #此循環(huán)取需要獲取的行數(shù)范圍衙猪,其中的A列猫缭、序號和合計為起始位置定位? ? ?

? ? ? ? cell1 = sheet[sheet.dimensions]

? ? ? ? for i in cell1:

? ? ? ? ? ? for j in i:

? ? ? ? ? ? ? ? if j.value == '姓名':

? ? ? ? ? ? ? ? ? ? e = j.column

? ? ? ? ? ? ? ? ? ? print(e)

? ? ? ? ? ? ? ? elif j.value == '工資':

? ? ? ? ? ? ? ? ? ? c = j.column

? ? ? ? ? ? ? ? ? ? print(c)

? ? ? ? ? ? ? ? elif j.value == '工資實發(fā)':

? ? ? ? ? ? ? ? ? ? d = j.column

? ? ? ? ? ? ? ? ? ? print(d)

? ? ? ? # 此循環(huán)取需要獲取的列數(shù)歼培,其中的姓名毅往、工資和工資實發(fā)為列位置定位? ? ? ? ? ? ? ? ?

? ? ? ? test_case=[]

? ? ? ? for row in range(a+2,b):

? ? ? ? ? ? sub_data={}

? ? ? ? ? ? sub_data['姓名']=sheet.cell(row,e).value

? ? ? ? ? ? sub_data['工資']=sheet.cell(row,c).value

? ? ? ? ? ? sub_data['工資實發(fā)']=sheet.cell(row,d).value

? ? ? ? ? ? #print(list(sub_data.keys()))

? ? ? ? ? ? ll=list(sub_data.values())

? ? ? ? ? ? #print(ll)

? ? ? ? ? ? test_case.append(ll)

? ? ? ? print (file)?

? ? ? ? #print("讀取到的所有測試用例:",test_case)

? ? ? ? # 此循環(huán)為將需要獲取的列字段對應(yīng)的行數(shù)范圍值取出來

? ? ? ? max_row = sheet1.max_row #取匯總表的行數(shù)

? ? ? ? print(max_row)?

? ? ? ? for row in test_case:

? ? ? ? ? ? sheet1.append(row)

? ? ? ? # 此循環(huán)為 將數(shù)據(jù)追加到匯總表中

? ? ? ? hang = list(range(max_row+1,max_row+b-a-1))

? ? ? ? for i in hang:

? ? ? ? #print(hang)

? ? ? ? ? ? sheet1.cell(row=i,column=4,value=file)#column=4 需要根據(jù)實際情況更改

? ? ? ? # 此循環(huán)為 生成一列十艾,將表名作為數(shù)據(jù)追加到列中?

? ? ? ? workbook1.save('C:/Users/Administrator/Desktop/匯總.xlsx')

結(jié)束

附記

#定位含有某字符串的單元格

cell = sheet['A']

? ? ? ? for i in cell:

? ? ? ? ? ? if i.value == '序號':

? ? ? ? ? ? ? ? a = i.row

? ? ? ? ? ? ? ? print(a)

? ? ? ? ? ? elif '填表' in str(i.value): #查找含有填表字符串的位置

? ? ? ? ? ? ? ? b = i.row

? ? ? ? ? ? ? ? print(b)

附記

#將非xlsx格式表轉(zhuǎn)成xlsx

path = 'C:/Users/Administrator/Desktop/匯總excel/'#需要匯總表的文件夾位置

file_list = os.listdir(path)? # 獲取這個文件夾下所有的excel文檔漾稀。

for file in file_list:

????? file_name,suff=os.path.splitext(file)

????? if suff =='xls':

????????????? data=pd.DataFrame(pd.read_excel(path+"/"+file))

????????????? data.to_excel(path+"/"+file_name+".xlsx",index=False)

??? ?? if os.path.splitext(file)[1]=='.xlsx':? #獲取所有xlsx的文件?




最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末模闲,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子县好,更是在濱河造成了極大的恐慌围橡,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件缕贡,死亡現(xiàn)場離奇詭異翁授,居然都是意外死亡拣播,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進店門收擦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來贮配,“玉大人,你說我怎么就攤上這事塞赂±崂眨” “怎么了?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵宴猾,是天一觀的道長圆存。 經(jīng)常有香客問我,道長仇哆,這世上最難降的妖魔是什么沦辙? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮讹剔,結(jié)果婚禮上油讯,老公的妹妹穿的比我還像新娘。我一直安慰自己延欠,他們只是感情好陌兑,可當(dāng)我...
    茶點故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著由捎,像睡著了一般兔综。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上隅俘,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天邻奠,我揣著相機與錄音,去河邊找鬼为居。 笑死,一個胖子當(dāng)著我的面吹牛杀狡,可吹牛的內(nèi)容都是我干的蒙畴。 我是一名探鬼主播,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼呜象,長吁一口氣:“原來是場噩夢啊……” “哼膳凝!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起恭陡,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤蹬音,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后休玩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體著淆,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡劫狠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了永部。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片独泞。...
    茶點故事閱讀 38,599評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖苔埋,靈堂內(nèi)的尸體忽然破棺而出懦砂,到底是詐尸還是另有隱情,我是刑警寧澤组橄,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布荞膘,位于F島的核電站,受9級特大地震影響玉工,放射性物質(zhì)發(fā)生泄漏衫画。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一瓮栗、第九天 我趴在偏房一處隱蔽的房頂上張望削罩。 院中可真熱鬧,春花似錦费奸、人聲如沸弥激。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽微服。三九已至,卻和暖如春缨历,著一層夾襖步出監(jiān)牢的瞬間以蕴,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工辛孵, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留丛肮,地道東北人。 一個月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓魄缚,卻偏偏與公主長得像宝与,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子冶匹,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,465評論 2 348

推薦閱讀更多精彩內(nèi)容