工作中每周会固定处理一些表,所以用python写了些自动化脚本。欢迎交流。
思路如下:1.循环读取Excel工作表。2.提取需要合并的数据字段(dataframe类型)放到一个list中。3.将list中的多个元素合并成一个Dataframe类型的数据并输出成EXCEL。
#将鑫速各地区直发明细合并到一个表中
import pandas as pd
import os
file=os.listdir('D:/鑫速联翘状态表')[0]#读取指定文件夹下的第一个表名
#file='D:/鑫速联翘状态表.xlsx'#直接读取表名
sheets=['香港明细','澳门明细','台湾明细','菲律宾明细','泰国明细']
#----------------------------------------------------------------------读取所有sheet名-------
# data=pd.read_excel('D:/鑫速联翘状态表/'+file,None)
# print(list(data.keys()))
#--------------------------------------------------------------------------------------------
D=[]
for x in sheets:
data=pd.read_excel('D:/鑫速联翘状态表/'+file,sheet_name=x)
data.rename(columns={'状态归类':'状态'},inplace=True)#状态归类和状态是同一个属性,所以我将状态归类替换成了状态
D.append(data.loc[:,['订单号','运单号','状态']])
num=pd.concat(D,axis=0)#合并list表D中的元素
num.to_excel('D:/鑫速状态汇总.xlsx',index=False)