利用python合并多个excel表格

参考了这个大佬的代码 使用Python合并多个Excel文件

把大佬的代码稍微做了修改。

# lib
import os
import xlrd
import xlsxwriter

# 在下方输入需要合并的文件所在文件夹位置
path=''
# 在下方输入合并后Excel的路径和文件名
work=xlsxwriter.Workbook('')
# 新建一个sheet
sheet=work.add_worksheet('combine')

file_list=os.listdir(path)
file_list.sort()

# Main
file_name='';
x1=1; x2=1;
fileNum = len(file_list)
print("在该目录下有%d个xlsx文件"%fileNum)
for file in file_list:
    file_name = os.path.join(path,file) 
    workbook=xlrd.open_workbook(file_name)
    sheet_name=workbook.sheet_names()

    for file_1 in sheet_name:
        table=workbook.sheet_by_name(file_1)
        rows=table.nrows
        clos=table.ncols

        for i in range(rows): 
            sheet.write_row('A'+str(x1),table.row_values(i))
            x1+=1

    print('正在合并第%d个文件 '%x2)
    print('已完成 ' + file_name)
    x2 += 1;
    
print("已将%d个文件合并完成"%fileNum)
work.close()

其中遇到的问题

  • 第一个问题就是下载库的问题,这段代码需要下载两个库
    xlrd xlsxwriter
    pip命令下载很方便,不过因为源问题,下载会很慢,我在搜资料的时候看到了一种方法
    pip install --upgrade pandas -i https://pypi.douban.com/simple
    这个命令调用的是国内源所以会很快。
    具体使用:管理员方式运行cmd,输入这个命令即可。
  • 第二个问题 如果有.xlsx文件,就会提示Excel xlsx file; not supported,这个是因为xlrd版本不兼容问题,参考 Excel xlsx file; not supported(xlrd版本不兼容问题,完美解决!)
    卸载之前的xlrd,安装旧版本xlrd就可以了
    第一步:pip uninstall xlrd
    第二步:pip install xlrd==1.2.0
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值