美文网首页
Excel内容合并

Excel内容合并

作者: 小帅明3号 | 来源:发表于2020-11-24 15:11 被阅读0次
    import os
    import xlwt
    import xlrd
    
    from datetime import datetime
    
    #同目录下多个Excel合并成一个
    print("\n\n   ~~~~~~~      ~~~~~~~~\n  ~~~~~~~~~~  ~~~~~~~~~~~\n   ~~~~~~冯冯小甜心~~~~~\n    ~~~~~          ~~~~\n      ~~~~~~~~~~~~~~~\n         ~~~~~~~~~\n            ~~~\n")
    
    #初始化全局变量
    exit_='Y'
    while True:
        pwd = input('请输入工具码(输入exit退出):')
        if pwd=='exit':
            break
        if pwd!='19961220':
            print("密码错误,请重新输入!")
            continue
        #设置有效期
        if  not datetime.now().strftime('%Y-%m-%d')<='2020-12-22':
            print("工具有效期到达上限!")
            continue
        # 设置登录密码
        if pwd == '19961220':
            print('登录成功!\n')
            while True:
                file_ph=input('请输入需合并Execl的路径:')
                file_ph_res=file_ph+'\\合并后'
                #解析路径下的所有xls,xlsx
                try:
                    file_list = [i for i in os.walk(file_ph)]
                    if len(file_list):
                        file_list=file_list[0][2]
                        wfile = file_ph_res + '\\合并后.xls'
                        we = xlwt.Workbook()  # 创建一个Excel对象
                        sh = we.add_sheet('sheet1', cell_overwrite_ok=True)  # 某个单元格可以复写,多次写入不报错
                        #计数最大行
                        ran_sh_max=0
                        for i in file_list:
                            if '.xls' in i or '.xlsx' in i:
                                rfile = file_ph+'\\'+i
                                #若目标路径不存在,创建
                                if not os.path.isdir(file_ph_res):
                                    os.mkdir(file_ph_res)
                                re = xlrd.open_workbook(rfile).sheet_by_index(0)  # 获取第一个页签对象
    
                                for i in range(re.nrows):  # 读行
                                    for j in range(re.ncols):  # 读列
                                        sh.write(i+ran_sh_max, j, re.cell(i, j).value)  # 在第i行第1列写内容
                                ran_sh_max+=re.nrows
                        we.save(wfile)
                    else:
                        print('输入目录未检测到Excel文件!!')
                        exit_ = input("是否继续?(Y/N):")
                        if exit_.upper() == 'N':
                            break
                        continue
                except Exception as e:
                    print(e)
                print("解析完成,合并成功!\n")
                exit_=input("是否继续?(Y/N):")
                if exit_.upper()=='N':
                    break
        if exit_.upper()=='N':
            break
    os.system('pause')
    

    相关文章

      网友评论

          本文标题:Excel内容合并

          本文链接:https://www.haomeiwen.com/subject/qziiiktx.html