概述
使用Python将多个excel的多个sheet页合并到一个excel
##读取Excel文件
import xlrd
##将文本写入excel文件
import xlsxwriter
##读取excel文件
def getexcel(excel):
f=xlrd.open_workbook(excel)
return f
##获取excel中的所有sheet表
def getsheet(excel):
return getexcel(excel).sheets()
##获取excel的sheet表个数
def getsheetnum(excel):
n=0
sheets=getsheet(excel)
for i in sheets:
n+=1
return n
##获取excel每个sheet表的行数
def getsheetrows(excel,sheetpage):
table=getsheet(excel)[sheetpage]
return table.nrows
##读取excel文件并返回行内容
def getexcelfile(excel,sheetpage):
table=getsheet(excel)[sheetpage]
rows=table.nrows
datavalue=[]
for row in range(rows):
##返回该行中所有单元格数据组成的列表
data=table.row_values(row)
datavalue.append(data)
return datavalue
if name == ‘main’:
excel=[‘C:Users17534Desktopexcelone.xlsx’,‘C:Users17534Desktopexceltwo.xlsx’,]
datavalue=[]
##循环取得第n个excel
for n in range(len(excel)):
sheetnum = getsheetnum(excel[n])
##循环返回第n个excel的第i个sheet页
for i in range(sheetnum):
data=getexcelfile(excel[n],i)
print('正在读取第 ’ + str(n) + ’ 个excel的第 ’ + str(i) + ’ sheet页的内容 ')
##将第n个excel的第i个sheet页的第j行单元格数据追加到列表中
for j in range(len(data)):
datavalue.append(data[j])
##定义合并后的目标文件
endexcel=‘C:Users17534Desktopexcelmerge.xlsx’
wb=xlsxwriter.Workbook(endexcel)
ws=wb.add_worksheet()
for i in range(len(datavalue)):
for j in range(len(datavalue[i])):
k=datavalue[i][j]
ws.write(i,j,k)
wb.close()
最后
以上就是缥缈柚子为你收集整理的python合并excel工作簿_使用Python将多个excel的多个sheet页合并到一个excel的全部内容,希望文章能够帮你解决python合并excel工作簿_使用Python将多个excel的多个sheet页合并到一个excel所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复