欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python之Excel编辑-[小试牛刀]批量替换excel中字符串

程序员文章站 2022-03-11 09:06:10
...

任务1:提取表格中指定项

遍历多个excel表格文件,从中找出指定的项目,并汇总到同一个表格中

解决思路:
逐个excel文件处理,过滤出指定的表格项,并将过滤出的项目存在一个列表中。最后将列表中内容存放到一个新建表格中。

app = xw.App(visible=True, add_book=False)
    file_list = os.listdir(file_path)
    data = []
    for file in file_list:
        if '~$' in file:
            continue
        if file.split('.')[-1] != 'xlsx':
            continue
        print(file)
        wb = app.books.open(file_path+'\\'+file)
        for sheet in wb.sheets:
            header = sheet['A1:C1'].value
            if header != ['品类', '产品', '价格']:#过滤表格表头,只处理指定的表头内容
                continue

            content = sheet.range('A1').expand().value
            filtered = [a for a in content if a[0] == name] #对表格内容进行过滤,筛选出指定品类的行
            if filtered != []:
                data = data + filtered

        wb.close()

    print(data)
    if data != []:
        newBook = app.books.add()
        newSheet = newBook.sheets.add(name)
        newSheet['A1:C1'].value = ['品类', '产品', '价格']
        newSheet['A2'].expand('table').value = data
        newBook.save(file_path+'\\合并表格.xlsx')
        newBook.close()
    app.quit()