工作需求,需要根据excel表格中的内容来命名excel表格的名称,手动修改的话内容重复太多,太耗费时间了,最近也在学excel读取相关内容,因此就想到了用代码来自动化皮批量修改excel名称,既快捷又省事省力,提高了工作效率。
补充:
- excel又称作工作簿(workbook),工作簿中有许多工作表(sheet),表又由许多单元格(cell)组成。
- 该程序只能读取xlsx结尾的格式,对于xls格式的结尾不对
程序如下:
import os
import openpyxl
def renameWorkbook(path):
# 获取文件夹中的文件
filenames = os.listdir(path)
for filename in filenames:
# 判断文件夹中的文件名是否是以x结尾,只操作.xlsx格式的文件
if filename[-1] == 'x':
path1 = path + '\\' + filename # 路径拼接
wb = openpyxl.load_workbook(path1)
ws = wb.active # 获取当前工作表
# 异常调试
try:
# 根据单元格拼接需要的表名
title = ws['A1'].value + '.xlsx'
print(title + '表格命名成功')
except TypeError:
print(title + '格式错误')
# 输出
wb.save(path + '\\' + title) # 这个是原路径覆盖
# wb.save('新路径'+title) #这个是新建的路径
if __name__ == "__main__":
#主程序
path = input("请输入文件夹路径,路径里面的反斜杠(\)输入两遍:")
renameWorkbook(path)
觉得有用的亲,给点个赞呗!