python合并excel工作簿_使用Python将多个excel的多个sheet页合并到一个excel

使用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:\Users\17534\Desktop\excelone.xlsx’,‘C:\Users\17534\Desktop\exceltwo.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:\Users\17534\Desktop\excelmerge.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()

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值