excel:批量处理xlsx文件,更改某数据
excel:批量处理xlsx文件,更改某数据

excel:批量处理xlsx文件,更改某数据

哪次帮谁写的小脚本,记录一下...

"""
读取当前目录下所有xlsx文件,
输入所需处理数据所在列(均从1开始计数)
所有表、sheet需要统一百分号所在的列
最后保存更改
pip install openpyxl==3.0.9
"""
import os
import openpyxl
COLUMN_NUM = 1

def get_file_name():
    files = os.listdir('./')
    file_list = []
    for f in files:
        if f.endswith('.xlsx'):
            file_name = f
            file_name = './' + file_name
            file_list.append(file_name)
    if not file_list:
        raise NameError('请检查文件夹,当前无xlsx文件!')
    return file_list

def run():
    file_list = get_file_name()
    column_num = COLUMN_NUM
    for file_name in file_list:
        print('当前正在处理--'+file_name)
        book = openpyxl.load_workbook(file_name)
        for sheet in book.worksheets:
            len_row = sheet.max_row
            for row in range(len_row):
                cell = sheet.cell(row+1, column_num)
                if type(cell.value) == float:
                    if cell.style == '百分比':
                        sheet.cell(row+1, column_num+1).value = cell.value * 100
                        sheet.cell(row + 1, column_num).style = '常规'
            book.save(filename=file_name)
        book.close()
        print('处理结束--'+file_name)

if __name__ == '__main__':
    run()

发表回复

您的电子邮箱地址不会被公开。