根据某一列拆表
-- coding: utf-8 --
时间:2022/5/7
名称:【采购下单】
场景介绍:根据OrderNO 拆分多个excel
使用的库
import pandas as pd
import sys
try:
arguments = sys.argv
excel_folder = arguments[1]
excel_path = arguments[2]
# excel_folder = r"C:/Users/****/"
# excel_path = r"C:\Users\test.xlsx"
data = pd.read_excel(excel_path, keep_default_na=False)
# .shape[0]返回的是行数,有几行
# .shape[1]返回的是的列数,有几列
rows = data.shape[0]
orderno_list = []
# 将orderno分类存在一个列表中
for i in range(rows):
temp = data[r"OrderNO"][i]
if temp not in orderno_list:
orderno_list.append(temp)
# orderno列表
for orderno in orderno_list:
new_df = pd.DataFrame()
for i in range(0, rows):
if data["OrderNO"][i] == orderno:
new_df = pd.concat([new_df, data.iloc[[i], :]], axis=0, ignore_index=True)
if orderno == "":
rename = '订单数据有误' + '.xlsx'
else:
vendorname = data["Vendor Name"][i]
orderno = data["OrderNO"][i]
ordertype = data["OrderType"][i]
branch = data["Branch Plant"][i]
rename = str(vendorname) + '-' + str(orderno) + '-' + str(ordertype) + '-' + str(branch) + '-订单明细' + '.xlsx'
new_df.to_excel(excel_folder + rename, encoding='utf_8_sig', index=False)
print("success")
except Exception as e:
# print(‘错误类型是:’, e.class.name)
# print(“拆分失败!” + str(e))
print(“fail”)