一个文件中有多个格式相同的sheet,我们想要批量合并这些sheet,然后将处理好的文件放到一个新的文件中去:
# -*- coding: utf-8 -*- """ Created on Wed Sep 22 11:18:51 2021 @author: xxx """ import xlrd import pandas as pd from pandas import DataFrame from openpyxl import load_workbook excel_name = r"xx1概览.xlsx" wb = xlrd.open_workbook(excel_name) sheets = wb.sheet_names() alldata = DataFrame() for i in sheets[2:]: #取格式一样的sheet的名字 df = pd.read_excel(excel_name, sheet_name=i) df['variable'] = i #这1列主要是识别来自于哪个sheet df['product'] = 'xx' #自己添加的,你们可以按需添加 alldata = alldata.append(df) #保存成一个df writer = pd.ExcelWriter(r"xx1概览副本.xlsx",engine='openpyxl') #下面2个是不需要合并的,我们直接读取出来 detect = pd.read_excel("xx1概览.xlsx",sheet_name='detect') quality = pd.read_excel("xx1概览.xlsx",sheet_name='quality') detect['product'] = 'xx' quality['product'] = 'xx' detect.to_excel(writer,sheet_name='detect') quality.to_excel(writer,sheet_name='quality') alldata.to_excel(excel_writer=writer,sheet_name="ALLDATA") writer.save() writer.close()