python批量修改excel替换内容

        今天工作时遇到需把每一个excel表中的平方米修改成公顷,有100多个表,所以打算写个python脚本,在网上查了之后都是不能保存原有格式的,后来直接用openpyxl库就可以直接操作excel表。

python批量修改excel替换内容_第1张图片

import os
import openpyxl
# 打开文件
COOKED_FOLDER = './EXCL/'  #文件夹的相对地址
dirs = os.listdir( COOKED_FOLDER )

def tq(n):
    path='./ZHWC/'+ n[7:int(len(n))]#保存路径
    workbook=openpyxl.load_workbook(n)#读取Excel文件
    sheet=workbook['Sheet1']#读取表
    a=sheet['A']#拿到A列数据
    tq=sheet['A5'].value#拿到我需要替换的数据
    sr=float(tq[11:int(len(tq))])*0.0001#拿到需修改数字
    sr='%.4f'%sr#保留4位小数
    tq1=tq[0:4]+'(公顷):'+sr#替换的内容
    for i in a:#遍历A列的每一项数据进行对比
        if str(i.value)==str(tq):
            i.value=tq1
    workbook.save(path)#保存表
files=[]#存储excel文件名
for file in dirs:
      files.append('./EXCL/%s'%(file))
for i in files:
    tq(i)
    print('修改完成')

这样就可以保存原有格式进行替换修改,如果要进行全表修改只需改变a获取全表数据,然后遍历全表修改。python批量修改excel替换内容_第2张图片python批量修改excel替换内容_第3张图片

你可能感兴趣的:(excel)